VDS за 300р от нашего партнера SpaceWeb
[1]
18 Авг 2014, 12:58

MySQL несколько COUNT с разными условиями в одном запросе

Привет!

Возможно ли в MySQL написать запрос который будет подсчитывать количество записей по разным условиям? Например, у меня сложный запрос и не хотелось бы делать три разных запроса к базе, в которых менялись только условия для функции COUNT.

Простой запрос для примера:

SELECT COUNT(*) as count FROM tbl WHERE user_id=1;

Так я посчитаю сколько записей в таблице для конкретного пользователя. В этом же запросе я хочу подсчитать так же сколько записей публичны, а сколько нет. Отметка об этом хранится в поле public=yes|no.

#mysql, #sql

Комментарии (1)
fullzilla
19 Авг 2014, 14:12
#

Для этого можно использовать функцию SUM.

SELECT COUNT(*) as count, SUM(public='yes') as count_yes, SUM(public='no') as count_no FROM tbl WHERE user_id=1;

Добавить комментарий

Войдите, чтобы написать о чем-нибудь...
Вход Регистрация
Web.onRails
Здесь вы можете спросить или написать обо всём, что касается Веб-разработки.
написать о чем-нибудь...
Метки:
Лучшее
[4]
10 Окт 2018, 15:33
Как запретить просмотр сайта по IP?
[просмотров 2801]
[52]
16 Окт 2011, 15:38
Вывести все элементы POST
[просмотров 2312]
[118]
21 Июл 2011, 14:04
Python Imaging Library (PIL)
[просмотров 2256]
[74]
31 мая 2011, 11:48
Python проверка существования переменной
[просмотров 2030]
[315]
16 Июл 2011, 20:03
Python работа с MySQL
[просмотров 1949]
[58]
29 мая 2012, 12:08
Узнать версию PHP из командной строки
[просмотров 1937]
[50]
22 Ноя 2011, 14:17
Как удалить vsftpd
[просмотров 1525]
[100]
19 Дек 2014, 16:16
User-agent для Internet Explorer 11
[просмотров 1499]

Вести с Хабра