56,803
社区成员




SELECT CASE pref_name
WHEN '德岛' THEN '四国'
WHEN '香川' THEN '四国'
WHEN '爱媛' THEN '四国'
WHEN '高知' THEN '四国'
WHEN '福冈' THEN '九州'
WHEN '佐贺' THEN '九州'
WHEN '长崎' THEN '九州'
ELSE '其他' END AS district,
SUM(population)
FROM PopTbl
-- GROUP BY 子句里引用了 SELECT 子句中定义的别名
GROUP BY district;
这条语句是否规范?按照SQL的执行顺序来讲,先运行group by子句,再运行select子句,而别名district是在select子句中定义的,在group子句中使用的,这样写是否规范?
一般做成两个子查询来,第一个按类别筛选, 然后再外面进行SUM GROUPBY