Oracle
 sql >> база данни >  >> RDS >> Oracle

Oracle SQL Query за обобщаване на статистика, използвайки GROUP BY

select batch 
,      count(case when status=1 then 1 end) status1
,      count(case when status=2 then 1 end) status2
,      count(case when status=3 then 1 end) status3
from   table
group by batch;

Това често се нарича "основна" заявка и аз написах статия за това как да генерирам динамично тези заявки в моя блог .

Версия, използваща DECODE (специфична за Oracle, но по-малко подробна):

select batch 
,      count(decode(status,1,1)) status1
,      count(decode(status,2,1)) status2
,      count(decode(status,3,1)) status3
from   table
group by batch;


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как да кодирам знаци от Oracle в XML?

  2. Как да прехвърлите масив от низове от C# към съхранена процедура на Oracle

  3. Невалиден номер на Oracle, причинен от функцията to_char

  4. Как да добавите вертикални граници към вашата изходна мрежа SQL*Plus / SQLcl

  5. FNDCPASS &AFPASSWD