Если вы хотите сложить выражения и получить результаты в трех разных столбцах ([x]
, [y]
и [z]
), используйте следующий подход.
SELECT
[LNMAJORTP],
[MainType],
SUM(CASE WHEN state LIKE '%firstCondition%' THEN x+y-z END) AS [x],
SUM(CASE WHEN state LIKE '%secondCondition%' THEN x+y-z END) AS [y],
SUM(CASE WHEN state LIKE '%thirdCondition%' THEN x+y-z END) AS [z]
FROM [my_table]
GROUP BY [LNMAJORTP], [MainType]
Если вы хотите сложить только одно выражение (x+y-z
в вашем примере), должно подойти простое предложение OR
в WHERE
.Результат выражения будет в одном столбце:
SELECT
[LNMAJORTP],
[MainType],
SUM(x+y-z) AS [x_y_z]
FROM [my_table]
WHERE state LIKE '%firstCondition%' OR state LIKE '%secondCondition%' OR state LIKE '%thirdCondition%'
GROUP BY [LNMAJORTP], [MainType]