반응형
사용자 정의 함수를 사용 하는 문제입니다.
아래와 같은 형태로 함수를 작성할 수 있습니다.
CREATE FUNCTION 'function name'('parameter name', 'datatype')
RETURNS 'datatype' (DETERMINISTIC)
BEGIN
DECLARE 'variable name' 'datatype';
SET ;
RETURN (QUERY) / 'variable name'
END
CREATE FUNCTION getNthHighestSalary(N INT) RETURNS INT
BEGIN
RETURN (
SELECT CASE WHEN COUNT(sub.salary) < N THEN NULL
ELSE MIN(sub.salary)
END
FROM (
SELECT DISTINCT salary
FROM employee
ORDER BY salary DESC
LIMIT N
) sub
);
END
반응형
'Database' 카테고리의 다른 글
Weather Observation Station 9 [ MySql ] (0) | 2021.12.07 |
---|---|
Weather Observation Station 8 [ MySql ] (0) | 2021.12.07 |
Weather Observation Station 7 [ MySql ] (0) | 2021.12.07 |
Weather Observation Station 6 [ MySql ] (0) | 2021.12.07 |
Department Top Three Salaries [ MSSQL ] (0) | 2021.12.06 |