Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Bagaimana cara menggabungkan dua kueri hitungan ke rasionya?

Menempatkan jawaban ini karena sejauh ini tidak ada yang benar

select count(case when status = "accepted" then 1 end) /
       count(case when status = "rejected" then 1 end) as Ratio
from my_table
where status in ("accepted","rejected")

Jika Anda juga membutuhkan jumlah individu

select count(case when status = "accepted" then 1 end) Accepted,
       count(case when status = "rejected" then 1 end) Rejected,
       count(case when status = "accepted" then 1 end) /
       count(case when status = "rejected" then 1 end) as Ratio
from my_table
where status in ("accepted","rejected")

Catatan:MySQL tidak memiliki masalah pembagian dengan nol. Ini mengembalikan NULL ketika Ditolak adalah 0.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Tidak dapat menggunakan mysql_real_escape_string

  2. MySQL:cara mendapatkan perbedaan antara dua cap waktu dalam hitungan detik

  3. Apakah ada kerugian menggunakan varchar (255) generik untuk semua bidang berbasis teks?

  4. DIREKTORI DATA MySQL

  5. Gabung Luar Kiri tidak mengembalikan semua baris dari tabel kiri saya?