注意:group by 是先排序后分组;
举例子说明:如果要用到group by 一般用到的就是“每这个字段” 例如说明现在有一个这样的表:每个部门有多少人 就要用到分组的技术
select...GROUP BY 与COUNT的一些复杂用法
直接用例子来说明吧
现有表:居民区表:DW_DM_RE_RC,部分字段如下
select AREA_ID,AREA_NAME,CITY_ID,CITY_NAME...(AREA_ID和AREA_NAME相关联,CITY_ID,CITY_NAME相关联)
第一步:
sql1:
select COUNT(*) as COUNT,AREA_ID,AREA_NAME,CITY_ID...由此得到启发
sql2:
SELECT T1.AREA_ID,T1.AREA_NAME,T1.CITY_ID,T1.CITY_NAME,T2.COUNT FROM
(SELECT COUNT(*)...) T1
LEFT JOIN (
SELECT COUNT(*) AS COUNT,AREA_ID,AREA_NAME FROM DW_DM_RE_RC
GROUP BY AREA_ID