Oracle
 sql >> Teknologi Basis Data >  >> RDS >> Oracle

Sql - alternatif dari WITH ... AS

Cukup gunakan agregasi bersyarat:

SELECT SUM(CASE WHEN STATUS = 'A' THEN 1 ELSE 0 END) AS A_COUNT ,
       SUM(CASE WHEN STATUS = 'B' THEN 1 ELSE 0 END) AS B_COUNT ,
       SUM(CASE WHEN STATUS = 'C' THEN 1 ELSE 0 END) AS C_COUNT ,
       SUM(CASE WHEN STATUS = 'D' THEN 1 ELSE 0 END) AS D_COUNT ,
       SUM(CASE WHEN STATUS = 'E' THEN 1 ELSE 0 END) AS E_COUNT ,
       SUM(CASE WHEN STATUS = 'F' THEN 1 ELSE 0 END) AS F_COUNT 
FROM XYZ ;

Saya harus menunjukkan bahwa menempatkan nilai pada baris terpisah bahkan lebih mudah:

select status, count(*)
from xyz
group by status;


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Buat Urutan dengan MULAI DENGAN dari Query

  2. Perbarui Bidang Secara Otomatis di Basis Data

  3. Oracle-XMLTYPE :Cara memperbarui nilai

  4. kolom tidak dapat ditangguhkan nol

  5. ORA-22905 - saat menanyakan jenis tabel dengan pernyataan pilih