MySQL - RETURN 语句
MySQL RETURN 语句
MySQL 中的 RETURN 语句用于结束存储函数。每个存储函数至少应包含一个 RETURN 语句。该语句仅用于存储过程、触发器或事件中的函数,您可以使用 LEAVE 语句代替 RETURN。
语法
以下是 MySQL RETURN 语句的语法 -
RETURN expression(表达式)
其中,expression 是要返回的值。
示例 1
以下查询演示了如何在函数中使用 RETURN 语句。
DELIMITER // CREATE FUNCTION Sample (bonus INT) RETURNS INT BEGIN DECLARE income INT; SET income = 0; myLabel: LOOP SET income = income + bonus; IF income < 10000 THEN ITERATE myLabel; END IF; LEAVE myLabel; END LOOP myLabel; RETURN income; END; // DELIMITER ;
您可以调用上面创建的函数,如下所示 -
SELECT Sample(1000);
输出
上述 mysql 查询将产生以下输出 -
Sample(1000) |
---|
10000 |
示例 2
假设我们使用 CREATE 语句在数据库中创建了一个名为 Emp 的表,如下所示 -
CREATE TABLE Emp( Name VARCHAR(255), DOB DATE, Location VARCHAR(255) );
我们在 Emp 表中插入了三条记录,如下所示:
INSERT INTO Emp VALUES ('Amit', DATE('1970-01-08'), 'Hyderabad'), ('Sumith', DATE('1990-11-02'), 'Vishakhapatnam'), ('Sudha', DATE('1980-11-06'), 'Vijayawada');
以下查询创建了一个名为 getDob() 的函数,该函数接受员工姓名作为参数,检索并返回 DOB 列的值。
DELIMITER // CREATE FUNCTION test.getDob(emp_name VARCHAR(50)) RETURNS DATE DETERMINISTIC BEGIN declare dateOfBirth DATE; select DOB into dateOfBirth from test.emp where Name = emp_name; return dateOfBirth; END// DELIMITER ;
如果调用该函数,您可以获取员工的出生日期,如下所示 -
SELECT getDob('Amit');
输出
以下是上述查询的输出 -
getDob('Amit') |
---|
1970-01-08 |