К примеру, у меня есть таблица звонков с полями "номер телефона" и "статус":
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 = 'строка')
работает вообще не так, как я предполагаю.
Где тут косяк?
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Имеется небольшое приложение, написанное с помощью JavaFX и FXMLВ нем добавляются поля в listView
Устройство подключенное через переходник USART-USB отправляет на комп данные, программа на компе принимает пакет данных (при помощи библиотеки...