SQL 合并两个 select 查询的结果集并转置计数
SQL merge result set from two select queries and transpose counting
我正在尝试使用特定模板从数据库中提取数据。
在我的数据库中有以下数据:
System | Type | Number
A TypeA 1
A TypeB 1
A TypeA 1
B TypeA 1
我想要这样的东西:
System | #TypeA | #TypeB
A 2 1
B 1 0
是否可以只查询一次?
我尝试在两次查询之间执行 full outer join
但没有成功。我很想知道性能方面的最佳解决方案。
提前致谢!
您可以使用条件案例表达式
通过聚合来完成此操作
select system,
Sum(case when type='TypeA' then 1 else 0 end) "#TypeA",
Sum(case when type='Typeb' then 1 else 0 end) "#TypeB"
from t
group by system;
我正在尝试使用特定模板从数据库中提取数据。
在我的数据库中有以下数据:
System | Type | Number
A TypeA 1
A TypeB 1
A TypeA 1
B TypeA 1
我想要这样的东西:
System | #TypeA | #TypeB
A 2 1
B 1 0
是否可以只查询一次?
我尝试在两次查询之间执行 full outer join
但没有成功。我很想知道性能方面的最佳解决方案。
提前致谢!
您可以使用条件案例表达式
通过聚合来完成此操作select system,
Sum(case when type='TypeA' then 1 else 0 end) "#TypeA",
Sum(case when type='Typeb' then 1 else 0 end) "#TypeB"
from t
group by system;