gpt4 book ai didi

mysql - 当 N=0 时在 select 查询的限制子句中使用 N-1 时出现运行时错误

转载 作者:可可西里 更新时间:2023-11-01 08:45:20 25 4
gpt4 key购买 nike

CREATE FUNCTION getNthHighestSalary(N INT) RETURNS INT
BEGIN
RETURN (
SELECT DISTINCT Salary FROM Employee ORDER BY Salary DESC LIMIT N-1,1
);
END

这个查询在 M=0 时给出异常,因为它变成 -1 但是当我这样写时

CREATE FUNCTION getNthHighestSalary(N INT) RETURNS INT
BEGIN
DECLARE M INT;
SET M=N-1;
RETURN (
SELECT DISTINCT Salary FROM Employee ORDER BY Salary DESC LIMIT M,1
);
END

请解释这两种说法的区别。当我设置 M= N-1 时,当 N=0 时 m 也将为负,它会给出以下异常

Line 6: SyntaxError: near '-1,1
);
END'

最佳答案

我不确定这是否有帮助。但这看起来像是来自 Leet Code ( https://leetcode.com/problems/nth-highest-salary) 的问题。我运行了下面的命令,它对我有用。

CREATE FUNCTION getNthHighestSalary(N INT) RETURNS INT
BEGIN
DECLARE M INT;
SET M=N-1;
RETURN (
select distinct
Salary
from
Employee
Order by 1 desc
limit M, 1

);
END

提交结果如下: enter image description here

希望这对您有所帮助!

关于mysql - 当 N=0 时在 select 查询的限制子句中使用 N-1 时出现运行时错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30702433/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com