在 SQL 中旋转一个简单的 table
Pivoting a simple table in SQL
我有一个简单的两列 table,我想将行转为列,这样 table:
List Count
---- -----
Bugs 3
Changes 5
可以像这样table:
Bugs Changes
---- -----
3 5
我曾尝试使用 ETL 工具展开列,但一直以这样的方式结束:
Bugs Changes
---- -----
3 null
null 5
有什么方法可以在 SQL 中完成这个枢轴吗?
您可以像这样进行聚合:
select sum(case when List = 'Bugs' then Count else 0 end) as Bugs,
sum(case when List = 'Changes' then Count else 0 end) as Changes
from table t
where List in ('Bugs', 'Changes');
我有一个简单的两列 table,我想将行转为列,这样 table:
List Count
---- -----
Bugs 3
Changes 5
可以像这样table:
Bugs Changes
---- -----
3 5
我曾尝试使用 ETL 工具展开列,但一直以这样的方式结束:
Bugs Changes
---- -----
3 null
null 5
有什么方法可以在 SQL 中完成这个枢轴吗?
您可以像这样进行聚合:
select sum(case when List = 'Bugs' then Count else 0 end) as Bugs,
sum(case when List = 'Changes' then Count else 0 end) as Changes
from table t
where List in ('Bugs', 'Changes');