我正在从mysql迁移到我可以做一个简单的Group By到Postgres。我想基本上按月和年分组记录,例如我只能获得2016年1月的一条记录,2016年2月的记录等。
我在Postgres中使用查询,但我不确定这是否是最有效的方法,它看起来应该有更好的东西。我最终不得不在年和月列的组合上运行Distinct。年和月列是整数。
SELECT distinct on (year::text || month::text) id, name, type, month, year
FROM records
WHERE type = 44
ORDER BY year::text || month::text DESC, year, month
LIMIT 12
答案 0 :(得分:0)
您不需要连接:
select distinct on (year, month)
id, name, type, month, year
from records
where type = 44
order by year desc, month desc
limit 12