假设我有这个表:拿在SQL Server的范围内最大的日期值
| Name | Date |
+-----------+-----------+
| Joe | 1/18/04 |
| Joe | 5/08/12 |
| Joe | 8/01/15 |
| Joe | 4/03/09 |
| Katie | 6/7/08 |
| Katie | 9/16/16 |
| Katie | 4/29/11 |
| Katie | 3/30/14 |
我需要向下凝聚到这一点:
| Name | Date |
+-----------+-----------+
| Joe | 8/01/15 |
| Katie | 9/16/16 |
(仅针对每个名称输入,以及最新的日期为每名)
我能得到的最接近的是通过使用GROUP BY Name
和MAX(Date)
,但返回类似这样的:
| Name | Date |
+-----------+-----------+
| Joe | 9/16/16 |
| Katie | 9/16/16 |
有什么建议吗?
编辑:这是我的查询:
SELECT name, MAX(date)
FROM table1
GROUP BY Name
编辑2:好了,我觉得愚蠢。我的实际查询是不正确地加入两个表。一旦我确定我能够获得正确的数据。谢谢您的帮助。
显示您用来为两者获取'9/16/16'的确切查询。使用GROUP BY和MAX应该可行。 –
日期列的数据类型是什么? –
日期是日期时间 –