我正在从数据库中提取数据,其中一个表包含两列共同标识一个位置,另一列包含每次服务的日期。是否可以编写 SQL 查询,以便获得每个位置服务的最近时间?
因此,如果我的原始数据如下所示:
category_a category_b date
1 a 1/1/01
1 a 2/2/02
1 b 1/2/01
1 b 2/3/02
2 a 1/3/01
2 a 2/4/02
2 b 1/4/01
2 b 2/5/02
然后查询将返回:
category_a category_b date
1 a 2/2/02
1 b 2/3/02
2 a 2/4/02
2 b 2/5/02
如果数据库的创作方式是将类别组合存储在单独的表中,那么这将很容易做到。但是,我不控制此数据库,因此无法对其进行更改。
最佳答案
SELECT
category_a,
category_b,
MAX(date)
FROM
Some_Unnamed_Table
GROUP BY
category_a,
category_b
ORDER BY
category_a,
category_b
我当然不介意在我可以的时候帮助别人,或者我不会在这个网站上,但是你真的在发布之前搜索过这个问题的答案吗?
关于SQL:为每个类别选择最近的日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6680568/