Как показать общее количество отправляющих и не отправляющих тесты? - PullRequest
0 голосов
/ 12 марта 2012

Я занимаюсь разработкой веб-приложения для интрасети, которое представляет собой Quiz Engine.Теперь мне нужно составить запрос, который показывает общее количество отправляющих и не отправляющих тесты.Текущий запрос, который я сейчас использую, показывает только количество отправляющих тестов:

SELECT COUNT(QuizID) AS [Total Number of Sending Quizzes] 
  FROM dbo.Quiz 
 WHERE (IsSent=1)

Так как мне изменить его, чтобы получить общее количество не отправляющих тестов?

Для вашей информации, в базе данных у меня есть таблица с названием Quiz Table, которая состоит из: QuizID, Title, Description, IsSent.

IsSent - это флаг / логическое значение, которое принимает значение True (1) или False (0), чтобы определить, отправлено тестирование или нет.

РЕДАКТИРОВАТЬ:

Я хочу получить два столбца: один называется Общее количество отправленных, а второй столбец - Общее количество не отправленных. Как получить эти столбцы?

Ответы [ 3 ]

1 голос
/ 12 марта 2012

Может быть разрешено пустое значение true для столбца IsSent, поэтому вы должны также обработать это

SELECT 
        CASE WHEN Isnull(IsSent,0) = 0 THEN  'Total not Sent' 
        ELSE 'Total Sent'
        END 'Quiz Status'
        ,COUNT(QuizID) 'Count'
FROM    dbo.Quiz 
GROUP BY isnull(issent,0)

Редактировать из комментариев:

SELECT (  SELECT count(SeqID) 
          FROM   quiz 
          WHERE  issent = 1 ) AS 'Total Number of not Sent'  

      , ( SELECT count(SeqID) 
          FROM   quiz 
          WHERE  isnull(issent,0) = 0 ) AS 'Total Number of Sent' 
0 голосов
/ 12 марта 2012

Вы можете сгруппировать результат по значению столбца IsSent следующим образом:

SELECT COUNT(QuizID),
        CASE WHEN IsSent = 1 THEN  [Total Number of Sending Quizzes] 
        ELSE [Total Number of Non-Sending Quizzes] 
        END [status]
FROM dbo.Quiz 
GROUP BY IsSent
0 голосов
/ 12 марта 2012
SELECT COUNT(QuizID) AS [Total Number of Sending Quizzes] 
  FROM dbo.Quiz 
 GROUP BY IsSent
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...