比较表中的两个日期并使用SQL返回更大的日期

时间:2011-07-08 20:41:42

标签: sql-server tsql date comparison

两个日期都存储在一个表中。如果date1更大,我想返回date1,如果date2更大,我想返回date2。我希望它们成为更大查询的一部分,所以我想要一个主要查询,但如果不可能,我可以使用临时表,然后使用第二个查询。代码将在存储过程中执行。

2 个答案:

答案 0 :(得分:12)

它将是标准SQL中的CASE语句

CASE WHEN date1 >= date2 THEN date1 ELSE date2 END

某些RDBMS上有特定功能可以像Excel做Max那样做,但这是标准的......

答案 1 :(得分:2)

你可以SELECT GREATEST('1776-07-04', '1977-08-16')。它应该返回最近的日期(不一定是最佳日期)。