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