小编典典

多个列的SQL MAX?

sql

如何在几列的最大值的每一行中返回1值:

表名

[Number, Date1, Date2, Date3, Cost]

我需要返回这样的内容:

[Number, Most_Recent_Date, Cost]

询问?


阅读 184

收藏
2021-05-05

共1个答案

小编典典

好了,您可以使用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的简单答案。]

2021-05-05