Получение нескольких переменных для отображения на сервере SQL? - PullRequest
1 голос
/ 21 декабря 2011

У меня есть два запроса:

Select count(*) as countOne where field = '1'
Select count(*) as countTwo where field = '2'

Что я хочу увидеть после выполнения этих запросов в моем средстве просмотра результатов:

countOne | countTwo
      23 |      123

Как получить результаты обоих запросов потолько один запрос?

Ответы [ 2 ]

4 голосов
/ 21 декабря 2011
SELECT COUNT(CASE WHEN field = '1' THEN 1 END) AS countOne,
       COUNT(CASE WHEN field = '2' THEN 1 END) AS countTwo
FROM   YourTable
WHERE  field IN ( '1', '2' )  
0 голосов
/ 21 декабря 2011

Самый простой способ - запустить каждый как подвыбор, например.

SELECT 
(
Select count(*) where field = '1' as countOne,
Select count(*) where field = '2' as countTwo
)

Но это не обязательно лучший способ

Другой способ сделать это - сгруппировать по полю, а затем выполнить PIVOT, чтобы выбрать каждую группу в виде отдельного столбца.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...