Tenho a seguinte tabela de pedidos em um postgres 9.6 db:
orders
item_id, created_at (a timestamp ie Rails app)
Eu gostaria de obter de volta uma lista de item_ids e anos distintos e uma contagem como esta:
item_id year count
------- ---- -----
23 2017 23
24 2017 45
24 2018 11
Como eu faria isso? Eu tentei algo assim, mas estou preso:
select item_id, extract(year from created_at) from orders where group by item_id, created_at;
Você estava quase lá, mas precisa agrupar por ano, não pelo valor do carimbo de data/hora: