SQL Server:选择时附加一个条件

SQL Server:选择时附加一个条件,sql,sql-server,select,conditional-statements,where,Sql,Sql Server,Select,Conditional Statements,Where,我需要一个SELECT语句,就像: Select ... a = sum(column1.value) b = sum(column1.value) if (column2 = x) .... from {TABLE with WHERE, GROUP etc} 更清楚地说: columnA columnB 3 2 4 7 8 1 2 2 a=sum(columnA) b=sum(c

我需要一个
SELECT
语句,就像:

Select 
    ...
    a = sum(column1.value)
    b = sum(column1.value) if (column2 = x)
    ....
from
   {TABLE with WHERE, GROUP etc}
更清楚地说:

columnA columnB
    3      2
    4      7
    8      1
    2      2
a=sum(columnA)
b=sum(columnA) if columnB=2
result: a=17, b=5

尝试使用
案例
,但不起作用。在
部分
将联接表定义为alt ON(…),其中column=x

可以添加示例表数据和预期结果吗?我想就是这样-如果我有SUM,我必须使用SUM(COUNT(CASE part))?你的问题对我来说有点不清楚。。。请在你的问题中提供一些细节请提供数据和预期结果我更新了问题,以清楚地表明,你的答案正是我想要的
DECLARE @temp TABLE
(
    columnA INT,
    columnB INT
)

INSERT INTO @temp (columnA, columnB)
VALUES (3, 2),(4, 7),(8, 1),(2, 2)

SELECT
      SUM(columnA)
    , SUM(CASE WHEN columnB = 2 THEN columnA END)
FROM @temp