如何将案例条件与聚合一起使用?
How do I use case condition with aggregate?
我的 table 中有两列:
col1 count
a 5
b 10
c 15
az 10
我想将值 az 更改为 a,然后求和 count,因此,结果将是:
TABLE=
col1 count
a 15
b 10
c 15
如何在 SQL 中执行此操作?
我做到了:
select col1, SUM(count)
FROM TABLE
WHERE
WHERE TABLE.col1 = CASE WHEN TABLE.col1 = 'az' THEN 'a' ELSE TABLE.col1 END GROUP BY fodc.country
但是,它没有给出正确的结果。它给出了意想不到的结果并完全消除了 az
如何在 SQL 中执行此操作?
您可以将 case
放在 select
中:
select (case when col1 = 'az' then 'a' else col1 end),
sum(count)
from table1
group by 1;
我的 table 中有两列:
col1 count
a 5
b 10
c 15
az 10
我想将值 az 更改为 a,然后求和 count,因此,结果将是:
TABLE=
col1 count
a 15
b 10
c 15
如何在 SQL 中执行此操作?
我做到了:
select col1, SUM(count)
FROM TABLE
WHERE
WHERE TABLE.col1 = CASE WHEN TABLE.col1 = 'az' THEN 'a' ELSE TABLE.col1 END GROUP BY fodc.country
但是,它没有给出正确的结果。它给出了意想不到的结果并完全消除了 az
如何在 SQL 中执行此操作?
您可以将 case
放在 select
中:
select (case when col1 = 'az' then 'a' else col1 end),
sum(count)
from table1
group by 1;