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

MySQL - брой активни/неактивни/забранени потребители и избор на потребители въз основа на състоянието в една заявка

Няма начин да получите очаквания резултат с една единствена заявка (тъй като структурата на резултата е различна). Трябва да използвате две различни заявки, за да получите очакваната информация за users таблица:

1 - Можете да получите status преглед със следното:

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 – За да получите всички потребители с status = 0 (активен) можете да използвате следното:

SELECT *
FROM users
WHERE status = 0

демо на 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. Измерване на действителното време на MySQL заявка

  2. Най-бързият начин за намиране на разстояние между две широчини/дълги точки

  3. MySQL:изберете първия елемент от разделен със запетая списък

  4. Неуспешно свързване с MySQL на localhost:3306 с потребителски root

  5. Продуктите на WooCommerce, показващи съобщение „Изчерпано“, когато всъщност не са изчерпани