你印象最深的一道SQL题目是什么?
我认为最经典的SQL题目应该是这两个,面试都碰到过类似的。 1.“查询第二高的薪水”,其SQL语句如下: SELECT MAX(salary) AS SecondHighestSalary FROM Employee WHERE salary
2。“查询连续出现的数字”,其SQL语句如下: SELECT DISTINCT a AS ConsecutiveNums FROM Logs WHERE (a, a+1, a+2) IN (SELECT a, a+1, a+2 FROM Logs) 这道题目考察了SQL中多种运算符的使用(如DISTINCT、IN、WHERE子句),并需要一定的逻辑思维能力。此外,该题可以采用自联结、窗口函数等多种方法进行解答,不同解法的性能差异较大。其中比较高效的解法是使用自联结,具体实现可参考以下SQL语句:
SELECT DISTINCT l1.num AS ConsecutiveNums FROM Logs l1 JOIN Logs l2 ON l1.num = l2.num-1 JOIN Logs l3 ON l1.num = l3.num-2
赞1
踩0