谁能帮助我使用SQL实现此目标。我是SQL的非常基本的用户,并尝试使用GROUP BY结合HAVING子句来执行此操作,但是它正在过滤我想要的记录。

我只想在此处输入相对月份列。只要有最大MonthNUmber的地方,对应的列应指定为“ Current Month”

sql - 使用SQL指定表中的最大记录-LMLPHP

最佳答案

@Tim Biegeleisen有一个正确的想法,尽管我认为使用max的windowing变体会更加优雅(并且理论上也应该更快,尽管您应该始终对所有选项进行基准测试而不是仅仅接受此类声明) 。

SELECT ID,
       EmpName,
       MonthNumber,
       CASE MonthNumber WHEN MAX(MonthNumber) OVER () THEN 'Current' END
from   mytable;

07-24 20:26