我想打印一些统计信息,因此我有以下代码:为什么ORDER BY在这种情况下工作?
(SELECT 'There are total', COUNT(Name), 'doctors.' FROM OCCUPATIONS
WHERE Occupation = 'Doctor')
UNION
(SELECT 'There are total', COUNT(Name), 'singers.' FROM OCCUPATIONS
WHERE Occupation = 'Singer')
UNION
(SELECT 'There are total', COUNT(Name), 'actors.' FROM OCCUPATIONS
WHERE Occupation = 'Actor')
UNION
(SELECT 'There are total', COUNT(Name), 'professors.' FROM OCCUPATIONS
WHERE Occupation = 'Professor')
ORDER BY COUNT(Occupation);
它计算每个职业的出现。我还需要根据这些事件将这四行分类。我的代码似乎没有工作:
ERROR 1054 (42S22) at line 4: Unknown column 'Occupation' in 'order clause'
什么是错的,以及如何解决它?
无论如何,命名列通常是一个好主意。 – yakatz