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

MySQL - hitung pengguna aktif/tidak aktif/banned dan pilih pengguna berdasarkan status dalam satu permintaan

Tidak ada cara untuk mendapatkan hasil yang Anda harapkan dengan satu kueri tunggal (karena struktur hasilnya berbeda). Anda harus menggunakan dua kueri berbeda untuk mendapatkan informasi yang diharapkan dari users tabel:

1 - Anda bisa mendapatkan status ikhtisar dengan yang berikut:

SELECT 
  SUM(CASE WHEN status = 0 THEN 1 ELSE 0 END) AS active_users,
  SUM(CASE WHEN status = 1 THEN 1 ELSE 0 END) AS inactive_users,
  SUM(CASE WHEN status = 2 THEN 1 ELSE 0 END) AS banned_users
FROM users

2 - Untuk mendapatkan semua pengguna dengan status = 0 (aktif) Anda dapat menggunakan yang berikut ini:

SELECT *
FROM users
WHERE status = 0

demo di dbfiddle.uk



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cari beberapa tabel untuk nilai yang sama dan dapatkan tabel dari mana hasilnya berasal

  2. Ekspresi mysql SEKARANG () di Doctrine QueryBuilder

  3. Apa yang salah dengan prosedur tersimpan ini?

  4. Memilih 7 hari terakhir dari Sekarang () di MYSQL

  5. mysql, ubah kolom, hapus kunci utama dan kenaikan otomatis