Mysql通过UNION完成总计
来源:互联网 发布:淘宝客佣金到账 编辑:程序博客网 时间:2024/06/12 01:03
SELECT C1, C3 , C4 , C5 , C6 , C7 , C8 , C9 , C10 , C11 , C12 , C13 , C14 , C15 , C16 , C17 , C18 , C19 FROM ( SELECT b.sec_dept_short_name AS c1, b.sec_dept_code AS c2 , SUM(IF(a.bj_id, 1, 0)) AS c3, SUM(CASE WHEN bj_type=1 THEN 1 ELSE 0 END) AS c4, SUM(CASE WHEN bj_type=2 THEN 1 ELSE 0 END) AS c5, SUM(CASE WHEN bj_type=3 THEN 1 ELSE 0 END) AS c6, SUM(CASE WHEN is_passed=0 THEN 1 ELSE 0 END) AS c7, SUM(CASE WHEN is_passed=1 THEN 1 ELSE 0 END) AS c8, SUM(CASE WHEN is_changed=0 THEN 1 ELSE 0 END) AS c9, SUM(CASE WHEN is_changed=1 THEN 1 ELSE 0 END) AS c10, SUM(CASE WHEN has_fw=0 THEN 1 ELSE 0 END) AS c11, SUM(CASE WHEN has_fw=1 THEN 1 ELSE 0 END) AS c12, SUM(CASE WHEN has_gate=0 THEN 1 ELSE 0 END) AS c13, SUM(CASE WHEN has_gate=1 THEN 1 ELSE 0 END) AS c14, SUM(CASE WHEN has_gap=0 THEN 1 ELSE 0 END) AS c15, SUM(CASE WHEN has_gap=1 THEN 1 ELSE 0 END) AS c16, SUM(CASE WHEN a.bj_id IS NOT NULL AND other_info IS NOT NULL AND other_info <> '' THEN 1 ELSE 0 END) AS c17, SUM(CASE WHEN a.bj_id IS NOT NULL AND ( other_info IS NULL OR other_info ='') THEN 1 ELSE 0 END) AS c18, SUM(IF(AA.BJ_ID, 1, 0)) AS c19 FROM bj_base_info a RIGHT OUTER JOIN tbl_basic_security_dept b ON a.sf=b.sec_dept_short_name LEFT JOIN ( SELECT BJ_BASE_INFO.BJ_ID FROM BJ_BASE_INFO WHERE EXISTS ( SELECT 1 FROM BJ_YW_INFO YW WHERE YW.BJ_ID = BJ_BASE_INFO.BJ_ID AND NETWORK_TYPE = 2 AND data_exchange IN ( 2,3 ) ) ) AA ON ( AA.BJ_ID = A.BJ_ID ) LEFT JOIN ( SELECT BJ_BASE_INFO.BJ_ID FROM BJ_BASE_INFO WHERE EXISTS ( SELECT 1 FROM BJ_YW_INFO YW WHERE YW.BJ_ID = BJ_BASE_INFO.BJ_ID AND NETWORK_TYPE = 2 AND data_exchange NOT IN ( 2,3 ) ) ) BB ON ( BB.BJ_ID = A.BJ_ID ) WHERE b.upper_dept=2 AND 1=1 AND b.sec_dept_short_name IN ( '公安部直属单位','北京市','天津市','河北省','山西省','内蒙古自治区','辽宁省','吉林省','黑龙江省','上海市','江苏省','浙江省','安徽省','福建省','江西省','山东省','河南省','湖北省','湖南省','广东省','广西壮族自治区','海南省','重庆市','四川省','贵州省','云南省','西藏自治区','陕西省','甘肃省','青海省','宁夏回族自治区','新疆维吾尔自治区','新疆生产建设兵团' ) GROUP BY b.sec_dept_short_name , b.sec_dept_code UNION SELECT '总计' AS c1, '999999999999' AS c2, SUM(IF(a.bj_id, 1, 0)) AS c3, SUM(CASE WHEN bj_type=1 THEN 1 ELSE 0 END) AS c4, SUM(CASE WHEN bj_type=2 THEN 1 ELSE 0 END) AS c5, SUM(CASE WHEN bj_type=3 THEN 1 ELSE 0 END) AS c6, SUM(CASE WHEN is_passed=0 THEN 1 ELSE 0 END) AS c7, SUM(CASE WHEN is_passed=1 THEN 1 ELSE 0 END) AS c8, SUM(CASE WHEN is_changed=0 THEN 1 ELSE 0 END) AS c9, SUM(CASE WHEN is_changed=1 THEN 1 ELSE 0 END) AS c10, SUM(CASE WHEN has_fw=0 THEN 1 ELSE 0 END) AS c11, SUM(CASE WHEN has_fw=1 THEN 1 ELSE 0 END) AS c12, SUM(CASE WHEN has_gate=0 THEN 1 ELSE 0 END) AS c13, SUM(CASE WHEN has_gate=1 THEN 1 ELSE 0 END) AS c14, SUM(CASE WHEN has_gap=0 THEN 1 ELSE 0 END) AS c15, SUM(CASE WHEN has_gap=1 THEN 1 ELSE 0 END) AS c16, SUM(CASE WHEN a.bj_id IS NOT NULL AND other_info IS NOT NULL AND other_info <> '' THEN 1 ELSE 0 END) AS c17, SUM(CASE WHEN a.bj_id IS NOT NULL AND (other_info IS NULL OR other_info ='') THEN 1 ELSE 0 END) AS c18, SUM(IF(AA.BJ_ID, 1, 0)) AS c19 FROM bj_base_info a RIGHT OUTER JOIN tbl_basic_security_dept b ON a.sf=b.sec_dept_short_name LEFT JOIN ( SELECT BJ_BASE_INFO.BJ_ID FROM BJ_BASE_INFO WHERE EXISTS ( SELECT 1 FROM BJ_YW_INFO YW WHERE YW.BJ_ID = BJ_BASE_INFO.BJ_ID AND NETWORK_TYPE = 2 AND data_exchange IN ( 2,3 ) ) ) AA ON ( AA.BJ_ID = A.BJ_ID ) LEFT JOIN ( SELECT BJ_BASE_INFO.BJ_ID FROM BJ_BASE_INFO WHERE EXISTS ( SELECT 1 FROM BJ_YW_INFO YW WHERE YW.BJ_ID = BJ_BASE_INFO.BJ_ID AND NETWORK_TYPE = 2 AND data_exchange NOT IN ( 2,3 ) ) ) BB ON ( BB.BJ_ID = A.BJ_ID ) WHERE b.upper_dept=2 AND 1=1 AND b.sec_dept_short_name IN ( '公安部直属单位','北京市','天津市','河北省','山西省','内蒙古自治区','辽宁省','吉林省','黑龙江省','上海市','江苏省','浙江省','安徽省','福建省','江西省','山东省','河南省','湖北省','湖南省','广东省','广西壮族自治区','海南省','重庆市','四川省','贵州省','云南省','西藏自治区','陕西省','甘肃省','青海省','宁夏回族自治区','新疆维吾尔自治区','新疆生产建设兵团' ) ORDER BY 2 ) A
0 0
- Mysql通过UNION完成总计
- 通过mysql-proxy完成mysql读写分离
- mysql UNION UNION All
- mysql union ,UNION RESULT
- mysql union
- mysql union
- MySQL Union
- mysql union
- mysql union
- MySQL Union
- mysql--union
- mysql --- union
- MySQL的分组小计再总计解决方案
- mysql UNION 和 UNION ALL
- Mysql中UNION & UNION ALL
- mysql union all和union
- postgre——case、union、小计总计(GROUP BY ROLLUP)写法
- mysql通过将or改成union来优化sql性能问题一例
- 第一次文档总结
- vc下调用matlab dll 文件 64位平台。
- 每个Java开发者都应该知道的5个JDK工具
- UIKit之UIScrollView
- linux常用指令整理
- Mysql通过UNION完成总计
- linux系统为firfox浏览器添加flash插件
- myeclipse10配置maven
- 【Spark亚太研究院系列丛书】Spark实战高手之路-第2章动手实战Scala第1小节:动手体验Scala(1)
- java第二讲(随笔)
- Spring3.1 对Bean Validation规范的新支持(方法级别验证)
- 介绍Unsupported major.minor version 51.0错误解决办法
- Access restriction required library rt.jar
- 求一个整数的逆整数(Reverse Integer)