我有一个包含多个日期列的表,以下是我的表列的示例:tbl.user_id
,tbl.date_1
,tbl.date_2
,tbl.date_3
我需要提出一个返回user_id
和most_recent_date
的查询,其中大多数most_recent_date
是date_1,date_2和date_3之间的最新日期。我想我需要一个嵌套的选择,但我无法解决它的逻辑。我希望有人能指出我正确的方向。
答案 0 :(得分:0)
您是否尝试过Greatest()函数?
这是一个简单的例子:
SELECT
userId,
greatest(dt1, dt2, dt3)
FROM testTbl;
您可能已经尝试过Max()函数,就像在大多数编程语言中一样。但是,在SQL中,Max是一个聚合函数。您只能在其中指定一个字段,它将返回该列中的最大值,并根据您的GROUP BY分组进行分组。
mySQL中的Greatest()函数相当于大多数其他语言的Max()函数。