Я никогда раньше не использовал TSQL, но решил, что в любом случае хочу покопаться в SO data dump .Так что это, вероятно, вопрос новичка.Я действительно пытался найти ответ, но я не знаю технического термина для того, что я пытаюсь сделать, и поиск хорош, только если у вас нет правильных ключевых слов.
Мойцель состоит в том, чтобы выяснить, сколько вопросов имеют оценку 0, сколько имеют оценку 1, сколько имеют оценку 2 и т. д.Я могу написать запрос, чтобы узнать эти индивидуальные подсчеты, без проблем.Я хотел бы иметь возможность выполнить запрос, содержащий цикл, хотя.Вот что я использую до сих пор:
DECLARE @counter int
SET @counter = 0
WHILE @counter < 3
BEGIN
SELECT
COUNT(*)
FROM
Posts
WHERE
PostTypeId = 1
AND
Score = @counter
SET @counter = @counter + 1
END
( РЕДАКТИРОВАТЬ : конечная цель состоит в том, чтобы расширить с [0, 3] до [-100, 1000] или что угодночтобы ответить на все существующие вопросы) Очевидно, моя проблема в том, что я собираю счетчик в каждом цикле цикла, а затем ничего не делаю с ним.В настоящее время результат, который я получаю, это просто счет того, что @counter
установлено изначально;количество итераций не имеет значения.Можно ли где-то сохранить результаты, а затем отобразить их как-то так:
+-------+--------------------------------+
| Score | NumberOfQuestionsWithThatScore |
+-------+--------------------------------+
| -10 | 111 |
+-------+--------------------------------+
| -9 | 0 |
+-------+--------------------------------+
| -8 | 248 |
+-------+--------------------------------+
| ... | ... |
+-------+--------------------------------+
( РЕДАКТИРОВАТЬ : любой достаточно четкий дисплей в порядке, приведенная выше таблица - просто пример; EDIT 2 : изменен дизайн таблицы, чтобы убрать постоянную путаницу)
Если так, как это называется и как это делается?