自定义分组 写一个查询

来源:互联网 发布:网络空间主权 编辑:程序博客网 时间:2024/06/06 10:49

有一个查询,按房屋面积范围分组查询,并且要根据面积状态类型来区分面积,  直接上图


SQL 如下:

SELECT 
CASE 
  WHEN (MJZTLX=0 AND YCMJ_JZ>=0 AND YCMJ_JZ<60)  OR (MJZTLX=1 AND SCMJ_JZ>=0 AND SCMJ_JZ<60) THEN  '0-60'
  WHEN (MJZTLX=0 AND YCMJ_JZ>=60 AND YCMJ_JZ<80) OR (MJZTLX=1 AND SCMJ_JZ>=60 AND SCMJ_JZ<80) THEN '60-80'
  WHEN (MJZTLX=0 AND YCMJ_JZ>=80 AND YCMJ_JZ<90) OR (MJZTLX=1 AND SCMJ_JZ>=80 AND SCMJ_JZ<90) THEN '80-90' 
  WHEN (MJZTLX=0 AND YCMJ_JZ>=90 AND YCMJ_JZ<120)OR (MJZTLX=1 AND SCMJ_JZ>=90 AND SCMJ_JZ<120)THEN '90-120' 
  WHEN (MJZTLX=0 AND YCMJ_JZ>=120 AND YCMJ_JZ<144) OR (MJZTLX=1 AND SCMJ_JZ>=120 AND SCMJ_JZ<144 )THEN '120-144' 
  WHEN (MJZTLX=0 AND YCMJ_JZ>=144 AND YCMJ_JZ<188) OR (MJZTLX=1 AND SCMJ_JZ>=144 AND SCMJ_JZ<188)THEN '144-188'
  WHEN (MJZTLX=0 AND YCMJ_JZ>=188) OR (MJZTLX=1 AND SCMJ_JZ>=188) THEN '188'
  ELSE NULL END MJFW,
SUM(CASE WHEN CSZT=1 THEN 1 ELSE 0 END)KESHOU,
SUM(CASE WHEN CSZT=2 THEN 1 ELSE 0 END)YISHOU
FROM house.house GROUP BY 
CASE 
  WHEN (MJZTLX=0 AND YCMJ_JZ>=0 AND YCMJ_JZ<60)  OR (MJZTLX=1 AND SCMJ_JZ>=0 AND SCMJ_JZ<60) THEN  '0-60'
  WHEN (MJZTLX=0 AND YCMJ_JZ>=60 AND YCMJ_JZ<80) OR (MJZTLX=1 AND SCMJ_JZ>=60 AND SCMJ_JZ<80) THEN '60-80'
  WHEN (MJZTLX=0 AND YCMJ_JZ>=80 AND YCMJ_JZ<90) OR (MJZTLX=1 AND SCMJ_JZ>=80 AND SCMJ_JZ<90) THEN '80-90' 
  WHEN (MJZTLX=0 AND YCMJ_JZ>=90 AND YCMJ_JZ<120)OR (MJZTLX=1 AND SCMJ_JZ>=90 AND SCMJ_JZ<120)THEN '90-120' 
  WHEN (MJZTLX=0 AND YCMJ_JZ>=120 AND YCMJ_JZ<144) OR (MJZTLX=1 AND SCMJ_JZ>=120 AND SCMJ_JZ<144 )THEN '120-144' 
  WHEN (MJZTLX=0 AND YCMJ_JZ>=144 AND YCMJ_JZ<188) OR (MJZTLX=1 AND SCMJ_JZ>=144 AND SCMJ_JZ<188)THEN '144-188'
  WHEN (MJZTLX=0 AND YCMJ_JZ>=188) OR (MJZTLX=1 AND SCMJ_JZ>=188) THEN '188'
  ELSE NULL END 


其他 MJZTLX 为面积状态类型,YCMJ_JZ 为预测面积   SCMJ_JZ 实测面积 

记录下,以后作参考。


0 0
原创粉丝点击