Необходимо выбрать из одной таблицы 3 значения количества записей по трем заданным критериям.
Простой пример, есть таблица:
id_|_type_| ...
1 | 1 |
2 | 2 |
3 | 3 |
4 | 1 |
5 | 2 |
6 | 3 |
7 | 1 |
8 | 2 |
Мне надо получить 3 числа:
первое — количество записей где `type`=1,
второе — количество записей где `type`=2,
третье — количество записей где `type`=3.
Должен получить 3, 3, 2.
Возможно ли через count() + join (либо какой-то другой способ) получить нужный результат за 1 запрос?
Моя неопытность (и пару часов попыток) говорят мне что нет. А желание снизить нагрузку на БД что да. Хотелось бы получить ответы от опытных программистов (ну или тех кто знает).
Заранее спасибо.
Комментарии (5)
RSS свернуть / развернутьevd
Что то вроде:
smi23
Оказалось все гараздо проще)
smi23
Но если вам надо именно в строку и количество типов ограничена, то
evd
Первый вариант подходит, спасибо.
Из второго тоже черпнул много, еще раз спасибо).
smi23
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.