1. 程式人生 > >查詢第N高的工資

查詢第N高的工資

通過自定義變數來實現。

CREATE FUNCTION getNthHighestSalary(N INT) RETURNS INT
BEGIN
  RETURN (
    select IFNULL(Salary, NULL) Salary from (
      select @row_num := @row_num+1 Rank, Salary from (
        select Salary from Employee group by Salary desc
      ) t1 join (
        select @row_num := 0 from dual
      ) t2
    ) t where
t.Rank=N );
END

通過