Oracle
 sql >> Database >  >> RDS >> Oracle

Come eseguire query GRUPPO PER mese in un anno

Sarei propenso a includere l'anno nell'output. Solo andata:

select to_char(DATE_CREATED, 'YYYY-MM'), sum(Num_of_Pictures)
from pictures_table
group by to_char(DATE_CREATED, 'YYYY-MM')
order by 1

Un altro modo (SQL più standard):

select extract(year from date_created) as yr, extract(month from date_created) as mon,
       sum(Num_of_Pictures)
from pictures_table
group by extract(year from date_created), extract(month from date_created)
order by yr, mon;

Ricorda l'ordine per, dal momento che presumibilmente li desideri in ordine e non vi è alcuna garanzia sull'ordine in cui le righe vengono restituite dopo un raggruppamento per.