使用多个查询创建多列计数器的复杂查询
Complex query to use several queries to create a multicolumn counter
我有从查询返回的下一个数据:
agent group
----- ------
a1 g1
a2 g1
a1 g2
a1 g2
a2 g1
a3 g2
我需要得到下一个总结如下:
agent g1_total g2_total
----- -------- --------
a1 1 2
a2 2 0
a3 0 1
我知道您可以通过仅包含两列的单个查询来完成,如下所示:
SELECT t1.agent, COUNT(t1.agent)
FROM t1
GROUP BY agent
但问题是我需要获取第二个 table,因为最终程序(scriptcase)需要获取第二个 table 才能创建统计信息。
有什么办法吗?
您在寻找条件聚合吗?
SELECT t1.agent, COUNT(t1.agent) as total_cnt,
SUM(group = 'g1') as g1_cnt,
SUM(group = 'g2') as g2_cnt
FROM t1
GROUP BY t1.agent;
我有从查询返回的下一个数据:
agent group
----- ------
a1 g1
a2 g1
a1 g2
a1 g2
a2 g1
a3 g2
我需要得到下一个总结如下:
agent g1_total g2_total
----- -------- --------
a1 1 2
a2 2 0
a3 0 1
我知道您可以通过仅包含两列的单个查询来完成,如下所示:
SELECT t1.agent, COUNT(t1.agent)
FROM t1
GROUP BY agent
但问题是我需要获取第二个 table,因为最终程序(scriptcase)需要获取第二个 table 才能创建统计信息。 有什么办法吗?
您在寻找条件聚合吗?
SELECT t1.agent, COUNT(t1.agent) as total_cnt,
SUM(group = 'g1') as g1_cnt,
SUM(group = 'g2') as g2_cnt
FROM t1
GROUP BY t1.agent;