mysql 函數例題

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

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()$

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

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')$

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

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')$
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章