【问题标题】:What is Stored Procedure in MySQL? [duplicate]MySQL中的存储过程是什么? [复制]
【发布时间】:2017-09-20 12:32:28
【问题描述】:

我一直在研究 MySQL 函数。 在研究函数时,我看到了名为“MySQL Stored Function”的函数。

这是我不明白这两件事的示例。 一个是

SELECT 
    customerName, CustomerLevel(creditLimit)
FROM
    customers
ORDER BY customerName;

第二个是

DELIMITER $$

CREATE FUNCTION CustomerLevel(p_creditLimit double) RETURNS VARCHAR(10)
    DETERMINISTIC
BEGIN
    DECLARE lvl varchar(10);

    IF p_creditLimit > 50000 THEN
 SET lvl = 'PLATINUM';
    ELSEIF (p_creditLimit <= 50000 AND p_creditLimit >= 10000) THEN
        SET lvl = 'GOLD';
    ELSEIF p_creditLimit < 10000 THEN
        SET lvl = 'SILVER';
    END IF;

 RETURN (lvl);
END

所以你能简单描述一下吗?

但是根据这个例子我需要一点帮助。 谢谢。

【问题讨论】:

标签: mysql function


【解决方案1】:

Tarang,SQL 有一些内置函数,如 TRIM、REVERSE、SUM、MIN 等。您可以在选择语句中使用这些函数。但是,如果您想要一个未内置的函数(即不是 SQL 标准或供应商提供的一部分),那么您必须编写自己的函数。 MySQL 存储函数是用户定义的函数,它们被编译(由引擎)并准备好在 Select 语句中调用。使用“CALL”语句调用存储过程(略有不同)。请参考一些基本的 SQL 教程或书籍,它们应该会让您清楚。在您的示例中,您必须通过运行代码示例的第二部分来创建函数“CustomerLevel”,然后运行 ​​SELECT 语句。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-10-22
    • 1970-01-01
    • 2020-12-12
    • 1970-01-01
    相关资源
    最近更新 更多