gpt4 book ai didi

sql - 从表中选择具有最大日期的行的信息

转载 作者:行者123 更新时间:2023-12-03 06:06:29 24 4
gpt4 key购买 nike

我的 table 看起来像这样:

group    date      cash  checks
1 1/1/2013 0 0
2 1/1/2013 0 800
1 1/3/2013 0 700
3 1/1/2013 0 600
1 1/2/2013 0 400
3 1/5/2013 0 200

-- 不需要现金,只需证明该表包含更多信息即可

我想获取日期为最大值且检查大于 0 的每个唯一组。因此返回结果如下所示:

group    date     checks
2 1/1/2013 800
1 1/3/2013 700
3 1/5/2013 200

尝试的代码:

SELECT group,MAX(date),checks
FROM table
WHERE checks>0
GROUP BY group
ORDER BY group DESC

问题在于它为我提供了所有日期和检查,而不仅仅是最大日期行。

使用 MS SQL Server 2005

最佳答案

SELECT group,MAX(date) as max_date
FROM table
WHERE checks>0
GROUP BY group

这可以获取最大日期..将其连接回您的数据以获取其他列:

Select group,max_date,checks
from table t
inner join
(SELECT group,MAX(date) as max_date
FROM table
WHERE checks>0
GROUP BY group)a
on a.group = t.group and a.max_date = date

内连接作为过滤器,仅获取最大记录。

仅供引用,您的列名很糟糕,不要对列(组、日期、表)使用保留字。

关于sql - 从表中选择具有最大日期的行的信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19432913/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com