Форум программистов
 
О проблемах с регистрацией пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail, а тут можно восстановить пароль.

Вернуться   Форум программистов > Web программирование > SQL, базы данных
Регистрация

Восстановить пароль
Повторная активизация e-mail


Ответ
 
Опции темы
Старый 27.01.2017, 17:16   #1
Tahoma
DI HALT RET
Форумчанин
 
Аватар для Tahoma
 
Регистрация: 30.12.2010
Сообщений: 117
Вопрос Несколько COUNT() в одном запросе

Доброго времени суток!

Уважаемые, гуру! Прошу у вас помощи в составлении запроса на сиквеле (my), т.к. я в нем не очень силен. Вопрос заключается в следующем:
Есть некая база заявок типа: ид, вопрос, тип
Где ид и вопрос заведомо понятны, а тип содержит intовое.
Пишу я на php.
Дак вот, возможно ли создать один запрос на select count() для каждого типа или надо на каждый тип делать свой запрос where type=?

По сути, у меня задача вывести названия типов и у каждого указать количество заявок.

Заранее спасибо.

Последний раз редактировалось Tahoma; 27.01.2017 в 17:21.
Tahoma вне форума Ответить с цитированием
Старый 27.01.2017, 18:16   #2
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 19,061
По умолчанию

Код:
Код:
SELECT ид,
     SUM(CASE WHEN тип=1 THEN 1 ELSE 0 END) AS Count1,
     SUM(CASE WHEN тип=2 THEN 1 ELSE 0 END) AS Count2
   FROM MyTable
   GROUP BY ид
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 27.01.2017, 19:33   #3
Tahoma
DI HALT RET
Форумчанин
 
Аватар для Tahoma
 
Регистрация: 30.12.2010
Сообщений: 117
По умолчанию

Цитата:
Сообщение от Аватар Посмотреть сообщение
Код:
Код:
SELECT ид,
     SUM(CASE WHEN тип=1 THEN 1 ELSE 0 END) AS Count1,
     SUM(CASE WHEN тип=2 THEN 1 ELSE 0 END) AS Count2
   FROM MyTable
   GROUP BY ид
Спасибо огромное. Порыскаю в инете по оптимизации, но все гуд
Tahoma вне форума Ответить с цитированием
Ответ
Купить рекламу на форуме от 7000 рублей в месяц



Опции темы


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Использование операторов SELECT, DELETE и UPDATE в одном запросе в PDO Dante5 SQL, базы данных 4 19.09.2015 11:41
несколько запросов в одном дбгрид undead92 БД в Delphi 2 05.07.2013 08:43
разные значения поля в одном запросе Pamparam SQL, базы данных 5 30.06.2012 18:43
Использование в одном запросе несколько БД Сергей089 SQL, базы данных 1 02.08.2010 10:33
несколько таблиц в одном DBGrid DaemonSAT БД в Delphi 3 06.07.2008 12:27


Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru
Пеллетный котёл Emtas
котлы EMTAS
Скидки на курсы GeekBrains 40%, выбирайте программу для себя