在使用分组操作时的几个注意事项
来源:互联网 发布:坐久了腰疼 知乎 编辑:程序博客网 时间:2024/06/05 04:42
注意事项一:
如果没有groub by子句,则在select子句中只允许出现统计函数,其他任何字段都不允许出现。
错误范例:select deptno,count(empno) from emp; 这样会造成字段列,和统计列的长度不一至,这是不允许的。
正确范例:select count(empno) from emp;
注意事项二:
在统计查询中,select子句后只允许出现分组字段和统计函数,而其它非统计这段不允许出现。
错误范例:select deptno,ename,count(empno) from emp group by deptno;
这样会造成字段列,和统计列的长度不一至,这是不允许的。
正确范例:select deptno ,ename,count(empno) from emp group by deptno;
注意事项三:
统计函数允许嵌套使用,但是嵌套统计函数之后的select子句中不允许再出现任何的字段,包括分组字段
统计函数嵌套分析
通过上图所示的查询结果可以发现,这个结果返回的数据就像数据表一样,存在数据列、
数据行,所以在数据库中就可以将查询的结果称为临时表,
如果现在对这张临时表的sum(sal)字段要求出最大值,也就是相当于再单独使用一次max()
函数,按照分组的要求,如果没有出现group by子句,则查询中不能出现分组条件之外的内
容,所以这也就是为什么分组函数嵌套后,不允许出现其他查询字段的原因了。
分组的规律:
1.当需要使用分组函数而且又需要查询其他列(分组条件)时,一般都要进行分组统计。
例如:查询每个部门的编号、人数,这时很明显就不能单独使用一个count()函数解决问题了,
还需要查询deptno列的内容,那么就一定要使用分组。
2.一个列一存在重复值的时候就都可以使用分组进行操作,这个列可能是具体表的列,
也可能是返回的临时表的列。
- 在使用分组操作时的几个注意事项
- ireport使用时的几个注意事项
- 使用Android Stdio时的几个注意事项
- libcurl 使用的几个注意事项
- libcurl 使用的几个注意事项
- 使用rem的几个注意事项
- 使用dedecms建站的几个注意事项
- mysq l索引使用的几个注意事项
- 使用Exchange 2007的几个注意事项
- Oracle sqlldr使用的几个注意事项
- Android使用套接字的几个注意事项
- itk::Image在使用时的注意事项
- 编写IOCP时的几个注意事项
- 编写IOCP时的几个注意事项
- DUMP 文件收集时的几个注意事项
- synchronized的几个注意事项
- Tablayout的几个注意事项
- JS的几个注意事项
- 语音简介
- 通过ab测试抗压能力 和 添加索引来增加搜索 能力
- JNI中如何在C++文件中调用java中的对象,举例说明
- 显示和隐藏动作栏(Action Bar)
- ListView 三种实现方式
- 在使用分组操作时的几个注意事项
- 复数和复函数
- JAVA中为什么要采用get,set方法的形式来对成员变量进行访问
- java程序执行时间计算
- 自定义视图
- Android之微信接入分享,登录功能。
- UML之交互图(顺序图和协作图)
- python+uiautomator测试环境搭建
- input和raw_input