Количество одинаковых строк в столбце

244
24 августа 2017, 20:05

К примеру, у меня есть таблица звонков с полями "номер телефона" и "статус":

date       | phone       | status
2017-01-02   84990000000   'BUSY'
2017-01-04   84990000000   'FAIL'
2017-01-05   84990000000   'OK'
2017-01-02   84990000001   'OK'
2017-01-10   84990000001   'FAIL'
2017-01-13   84990000001   'OK'
2017-01-15   84990000001   'FAIL'

Мне нужно для каждого номера вывести количество BUSY, FAIL, OK в отдельных столбцах, т.е. должно получиться:

phone       | count_busy | count_fail | count_ok
84990000000   1            1            1
84990000001   0            2            2

Написал вот такой запрос:

SELECT
   phone,
   COUNT(call_status = 'BUSY') as busy_count,
   COUNT(call_status = 'FAIL') as fail_count,
   COUNT(call_status = 'OK') as fail_count
FROM calls
GROUP BY phone

Но результат запроса неправильный, похоже, что COUNT(call_status = 'строка') работает вообще не так, как я предполагаю.

Где тут косяк?

READ ALSO
Как лучше установить связи?

Как лучше установить связи?

Есть образецОбразец может поступить от разных лабораторий

264
Сохранение формы JavaFX

Сохранение формы JavaFX

Имеется небольшое приложение, написанное с помощью JavaFX и FXMLВ нем добавляются поля в listView

328
В чем ошибка? Java [дубликат]

В чем ошибка? Java [дубликат]

Данный вопрос уже был задан и имеет решение:

319
Как обработать пакет данных (Java)

Как обработать пакет данных (Java)

Устройство подключенное через переходник USART-USB отправляет на комп данные, программа на компе принимает пакет данных (при помощи библиотеки...

324