关于order by 和group by同时使用

写程序也有很长的一段时间了,有些东西我总未曾去思考,不多去积累一些有用的东西,总喜欢“用要即拿”的心态来对待,这是很是很差的坏习惯。这样只会形成依赖心太强,每当遇到一些小小的问题都须要去翻资料。就好像今天写一条查询语句的时候,连group by 和 order by连用都不清楚,我想我之后得注意这些问题。spa

正确使用以下:ci

如下是引用片断:
SELECT dep.department_name, MAX(emp.salary), MIN(emp.salary)  
FROM departments dep  
LEFT JOIN employees emp  
ON (dep.department_id = emp.department_id)  
GROUP BY dep.department_name  
--order by 的列,必须是出如今group by 子句里的列   
ORDER BY dep.department_name DESC

错误使用以下:(执行后报错:ORA-00979:不是GROUP BY 表达式)table

如下是引用片断:SELECT dep.department_name, MAX(emp.salary), MIN(emp.salary)  FROM departments dep  LEFT JOIN employees emp  ON (dep.department_id = emp.department_id)  GROUP BY dep.department_name  --order by 的列,应该出如今group by 子句中   ORDER BY dep.department_id DESC
相关文章
相关标签/搜索