多列的SQL MAX?

多列的SQL MAX?

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

表名

[Number, Date1, Date2, Date3, Cost]

我需要归还这样的东西:

[Number, Most_Recent_Date, Cost]

查询?


慕侠2389804
浏览 1197回答 3
3回答

烙印99

您可以使用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[用于MicrosoftSQLServer2008在上面,你可以考虑斯文下面的简单答案。]

Smart猫小萌

下面是另一个很好的解决方案Max使用T-SQL和SQLServer的功能SELECT [Other Fields],   (SELECT Max(v)     FROM (VALUES (date1), (date2), (date3),...) AS value(v)) as [MaxDate]FROM [YourTableName]

青春有我

如果使用MySQL,可以使用SELECT GREATEST(col1, col2 ...) FROM table
打开App,查看更多内容
随时随地看视频慕课网APP