У меня есть таблица mysql с сообщениями. Каждое сообщение имеет статус своего текущего статуса в системе. Мы хотим создать диаграммы, сравнивающие открытые сообщения с остальными. Я пытаюсь создать ответ JSON, который выглядит следующим образом:
Roofing: [
open: 12,
others: 24
],
Building: [
open: 4,
others: 32
]
Так выглядит база данных mysql
+---+------------+---------+
|ID | Industry | Status |
+---+------------+---------+
| 1 | Building | Sent |
| 2 | Building | Review |
| 3 | Building | Open |
| 4 | Roofing | Sent |
| 5 | Roofing | Review |
| 6 | Roofing | Open |
+---+------------+---------+
Отправлено и обзор подпадают под другие
Мне нужен способ подсчитать все значения для open и других, а затем выложить его в JSON.
Спасибо за любую помощь заранее.
Часто упускаемая особенность COUNT заключается в том, что он фактически учитывает только NON-значения
SELECT industry,
COUNT(CASE WHEN Status ='Open' THEN 1 ELSE NULL END) as open_count,
COUNT(CASE WHEN Status !='Open' THEN 1 ELSE NULL END) as other_count
FROM Table1 GROUP BY industry
Других решений пока нет …