1 AND 50 then sum(count_b*bal) ELSE 0 end age41_50b,
CASE WHEN AGE BETWEEN 51 AND 60 then sum(count_b) ELSE 0 end age51_60c,
CASE WHEN AGE BETWEEN 51 AND 60 then sum(count_b*bal) ELSE 0 end age51_60b,
CASE WHEN AGE > 60 then sum(count_b) ELSE 0 end age60_c,
CASE WHEN AGE > 60 then sum(count_b*bal) ELSE 0 end age60_b,
count(count_b) sum_count,
sum(count_b*bal) sum_bal
from
(SELECT TYPE, CASE WHEN BAL < 50000 THEN '5万元以下'
WHEN BAL BETWEEN 50001 AND 100000 THEN '5-10万'
WHEN BAL BETWEEN 100001 AND 200000 THEN '10-20万'
WHEN BAL BETWEEN 200001 AND 300000 THEN '20-30万'
WHEN BAL BETWEEN 300001 AND 400000 THEN '30-40万'
WHEN BAL BETWEEN 400001 AND 500000 THEN '40-50万'
WHEN BAL > 500000 THEN '50万以上'
END AS BAL_RANGE,
BAL, AGE, COUNT(*) COUNT_B
FROM C_CUST_AGE
WHERE DEPT_ID = ?
AND TYPE = ?
GROUP BY TYPE, AGE, BAL)
GROUP BY TYPE,bal_range,AGE)
group by type,bal_range
最终结果集:
|