如何在几列的最大值的每一行中返回1值:
表名
[Number, Date1, Date2, Date3, Cost]
我需要返回这样的内容:
[Number, Most_Recent_Date, Cost]
查询?
最佳答案
好了,您可以使用CASE语句:
SELECT
CASE
WHEN Date1 >= Date2 AND Date1 >= Date3 THEN Date1
WHEN Date2 >= Date1 AND Date2 >= Date3 THEN Date2
WHEN Date3 >= Date1 AND Date3 >= Date2 THEN Date3
ELSE Date1
END AS MostRecentDate
[对于Microsoft SQL Server 2008 及更高版本,您可以在下面考虑Sven的简单答案。]
关于sql - 多个列的SQL MAX?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/71022/