groupby子句及其扩展

groupby子句及其扩展

ID:34723167

大小:124.18 KB

页数:17页

时间:2019-03-10

groupby子句及其扩展_第1页
groupby子句及其扩展_第2页
groupby子句及其扩展_第3页
groupby子句及其扩展_第4页
groupby子句及其扩展_第5页
资源描述:

《groupby子句及其扩展》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、GROUPBY子句GROUPBY子句主要用于对WHERE中得到的结果进行分组,也就是说它是在WHERE子句之后执行,对经过WHERE筛选后的结果按照某些列进行分组,之后进行相应的处理工作。SpecifytheGROUPBYclauseifyouwantthedatabasetogrouptheselectedrowsbasedonthevalueofexpr(s)foreachrowandreturnasinglerowofsummaryinformationforeachgroup.当使用聚集函数的时候,除非对整个语句的查询结果集进行聚集运算

2、,否则都要通过指定GROUPBY子句来确定是对某类结果集进行聚集运算。请看下面的例子:17:11:10SQL>selectcount(object_name)numfromt; --这里是对整个表进行count运算,不会出错。  NUM------ 5059917:11:17SQL>selectcount(object_name)numfromtwhereSTATUS='VALID';--这里对返回来的所有结果进行count运算,不会出错。 NUM-----5057817:12:00SQL>selectowner,status,count(ob

3、ject_name)numfromt;--这里是想对owner和status进行分组,计算出它们的count(object_name)值,没有使用groupby来显示分组,出错。selectowner,status,count(object_name)numfromt    *ERRORatline1:ORA-00937:notasingle-groupgroupfunction17:13:36SQL>selectowner,status,count(object_name)numfromtgroupbyowner,status;OWNER  

4、 STATUS     NUM----------------------------PUBLIC   VALID     19968CTXSYS   VALID      339..............................NING    VALID       1PUBLIC   INVALID     19ORDSYS   VALID     166928rowsselected.17:23:13SQL>selectowner,status,count(object_name)numfromtgroupbyowner,sta

5、tus,temporary;--这里多出了表t中的列temporaryOWNER   STATUS     NUM----------------------------WMSYS   VALID       1SCOTT   INVALID      2..............................ORDSYS   VALID     1669HR     VALID      34IX     VALID      5335rowsselected.17:29:06SQL>selectowner,status,count(ob

6、ject_name)numfromtgroupbyowner;--GROUPBY子句的内容少了status列selectowner,status,count(object_name)numfromtgroupbyowner       *ERRORatline1:ORA-00979:notaGROUPBYexpression可以看到,如果想对某一类结果集进行聚集运算,就必须通过GROUPBY来指定这类结果集,我们还可以看到以下两个特点:1、ExpressionsintheGROUPBYclausecancontainanycolumnsofth

7、etables,views,ormaterializedviewsintheFROMclause,regardlessofwhetherthecolumnsappearintheselectlist.2、在SELECT列表中,除非是函数(主要是聚集函数)、常量以外,其他所有的列名或者表达式(在GROUPBY中必须也要是表达式的原样而不能是它的别名),都必须要在GROUPBY子句中出现。3、TheGROUPBYclausegroupsrowsbutdoesnotguaranteetheorderoftheresultset.Toordertheg

8、roupings,usetheORDERBYclause.使用GROUPBY子句还有下面一些的限制:1、你不能在子句中使用LOB/VARRAYS/NE

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。