У меня есть таблица, в которой хранится несколько элементов для состояния, и я хочу получить счетчик для каждого состояния в соответствии с конкретными условиями.Я написал этот запрос:
SELECT
State_ID,
State_Name,
State_All= CASE WHEN type1=1 AND type2=1 THEN COUNT(Id) END
State_w= CASE WHEN type1=2 AND type2=1 THEN COUNT(Id) END
State_s= CASE WHEN type1=2 AND type2=2 THEN COUNT(Id) END
FROM
tblStates
, но я получаю эту ошибку:
Column 'State_ID' is invalid in the select list because it is not contained in either an aggregate function or the GROUP BY clause.
Когда я добавил предложение GROUP BY
для State_ID, я снова получил ошибку выше для State_Name и при добавленииState_Name для предложения GROUP BY
, я получил ошибку для State_All, State_w, State_s.
У меня нет столбца с именем State_All, State_w, State_s в моей таблице.
Как получитьрассчитывать в соответствии с конкретными условиями без использования CURSORS
?