mysql 函數例題

函數語法:
必須有一個返回值,而且只能是一個返回值ide

create function(參數名 參數類型) returns 返回類型
begin
    函數體
    return 值;
end 結束符
調用:
select 函數名(參數列表)

#案例:返回公司的員工個數,無參返回函數

DELIMITER $
CREATE FUNCTION mm() RETURNS INT
BEGIN
    DECLARE c INT DEFAULT 0;
    SELECT COUNT(*) INTO c
    FROM employees;

    RETURN c;
END $

SELECT mm()$

#有參返回
#案例:根據員工名,返回工資code

CREATE FUNCTION mm2(ename VARCHAR(20)) RETURNS DOUBLE
BEGIN
    DECLARE esalary DOUBLE DEFAULT 0;
    SELECT salary INTO esalary
    FROM employees e
    WHERE  e.last_name=ename;
    RETURN esalary;

END $

SELECT mm2('kochhar')$

#案例:根據部門名返回該部門的平均工資it

CREATE FUNCTION mm3(dname VARCHAR(20)) RETURNS DOUBLE
BEGIN
    DECLARE asalary DOUBLE DEFAULT  0;
    SELECT AVG(salary) INTO asalary
    FROM employees e
    INNER JOIN departments d
    ON e.department_id=d.department_id
    WHERE d.department_name=dname;
    RETURN asalary;

END $

SELECT mm3('IT')$
相關文章
相關標籤/搜索