复杂的统计语句

该查询联合多个子查询,分别统计了不同类型的国家、城镇、村庄的数量,以及低电压用户数、办公区数量和组织数量。通过对dc_cumulative_outage_list_detail表、dc_desk_area_info表和dc_cumulative_outage_list表的数据进行过滤和聚合,得到详细的国家区域信息统计结果。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

select ttt.country,sum(ttt.townNum),sum(ttt.villageNum),sum(ttt.accountNum),sum(ttt.deskAreaNum),sum(ttt.orgNum) from (SELECT
			tt.country,
			count(DISTINCT tt.town) AS townNum,
			count(DISTINCT tt.village) AS villageNum,
			0 as accountNum,
	    0 as deskAreaNum,
      0 as orgNum
		
		FROM
			(
				SELECT
					t2.country,
					t2.town,
					t2.village
				FROM
					dc_cumulative_outage_list_detail t1
				INNER JOIN dc_desk_area_info t2 ON t1.desk_area_id = t2.desk_area_id
				INNER JOIN dc_cumulative_outage_list t3
				ON t1.cumulative_outage_list_id=t3.id
				WHERE
					t1.is_deleted = 0
				AND t2.is_deleted = 0
				AND (
					t1.type = 3
					or
					(t1.type = 4
				 	AND t1.is_power_failure='是')))tt
			GROUP BY
			tt.country

   UNION 

		SELECT
			t2.country,
      0 as townNum,
	    0 as villageNum,
			sum(t2.low_voltage_users) as accountNum,
			0 as deskAreaNum,
      0 as orgNum
		FROM
			dc_cumulative_outage_list_detail t1
		INNER JOIN dc_desk_area_info t2 ON t1.desk_area_id = t2.desk_area_id
		INNER JOIN dc_cumulative_outage_list t3
		ON t1.cumulative_outage_list_id=t3.id
		WHERE
			t1.is_deleted = 0
		AND t2.is_deleted = 0
		AND (
			t1.type = 3 or t1.type=2
		  or (t1.type=4 and t1.is_power_failure='是')
		)

    GROUP BY t2.country

    UNION
		
    SELECT
			t2.country,
      0 as accountNum,
	    0 as deskAreaNum,
			0 as accountNum,
			count(DISTINCT t1.desk_area_id) as deskAreaNum,
      count(DISTINCT t1.org) as orgNum
		FROM
			dc_cumulative_outage_list_detail t1
		INNER JOIN dc_desk_area_info t2 ON t1.desk_area_id = t2.desk_area_id
		INNER JOIN dc_cumulative_outage_list t3
		ON t1.cumulative_outage_list_id=t3.id
		WHERE
			t1.is_deleted = 0
		AND t2.is_deleted = 0
		AND (
			t1.type = 3
		  or (t1.type=4 and t1.is_power_failure='是')
		)

    	GROUP BY t2.country) ttt GROUP BY ttt.country
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值