Sql server 如何将两行相加
这是我在sql服务器中的表。现在我想得到所有代码的总数,姓名的计数和天数的总和。但是我想把A和Q加起来作为A。 所以桌子应该是这样的Sql server 如何将两行相加,sql-server,Sql Server,这是我在sql服务器中的表。现在我想得到所有代码的总数,姓名的计数和天数的总和。但是我想把A和Q加起来作为A。 所以桌子应该是这样的 Name Code days ----------------- aaaa A 2 bbbb B -2 cccc Q -1 dddd C 1 eeee D -3 ffff A 3 您可以使用CASE将聚合中的“Q”转换为“A”: count(Name) Code sum(da
Name Code days
-----------------
aaaa A 2
bbbb B -2
cccc Q -1
dddd C 1
eeee D -3
ffff A 3
您可以使用
CASE
将聚合中的“Q”转换为“A”:
count(Name) Code sum(days)
------------------------------
3 A 4
1 B -2
1 C 1
1 D -3
或使用IIF
:
select count(name),
case when code = 'Q' then 'A' else code end as code,
sum(days)
from your_table
group by case when code = 'Q' then 'A' else code end
您可以使用
Select
获取该行的值:Select days from table\u name,其中code=A
之后,您可以使用Alter
select count(name),
iif(code = 'Q', 'A', code) as code,
sum(days)
from your_table
group by iif(code = 'Q', 'A', code)