有一个查询,按房屋面积范围分组查询,并且要根据面积状态类型来区分面积, 直接上图
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 实测面积
记录下,以后作参考。