sql >> Database >  >> RDS >> Oracle

Hoe GROUP BY maand in een jaar opvragen

Ik zou geneigd zijn om het jaartal in de output op te nemen. Enkele reis:

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

Een andere manier (meer standaard SQL):

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;

Onthoud de volgorde op, aangezien je deze waarschijnlijk op volgorde wilt hebben, en er is geen garantie over de volgorde waarin rijen worden geretourneerd na een groep op.



  1. Now() zonder tijdzone

  2. Oracle:CSV-bestand importeren

  3. Prestaties afstemmen van het hele queryplan

  4. Hoe rijen in een tabel te tellen op basis van een andere tabel in mysql