Sqlserver
 sql >> Database >  >> RDS >> Sqlserver

query per selezionare il conteggio dei record per ogni anno

Un metodo semplice per ottenere tutti gli anni nei dati, anche quando non soddisfano le condizioni del where clausola -- è usare l'aggregazione condizionale:

select year(fact_date) as yyyy,
       sum(case when stat = 1 and id = 16 then 1 else 0 end) as cnt_16
from tbl_fact
group by year(fact_date)
order by yyyy;