oracle索引、序列、查询分组、排序、连接、视图等

oracle索引、序列、查询分组、排序、连接、视图等

ID:39337471

大小:1.00 MB

页数:49页

时间:2019-07-01

oracle索引、序列、查询分组、排序、连接、视图等_第1页
oracle索引、序列、查询分组、排序、连接、视图等_第2页
oracle索引、序列、查询分组、排序、连接、视图等_第3页
oracle索引、序列、查询分组、排序、连接、视图等_第4页
oracle索引、序列、查询分组、排序、连接、视图等_第5页
资源描述:

《oracle索引、序列、查询分组、排序、连接、视图等》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、orcleoracle索引、序列、查询、视图本章目标索引序列聚合函数排序分组连接查询视图索引什么是做引?一种用户提升查询效率的数据库对象通过快速定位数据的方法,减少磁盘I/O操作索引信息与表独立存放oracle数据库自动使用和维护做引索引分类唯一性索引非唯一性索引创建索引的方式自动创建:在定义主键或唯一性约束的时候系统会自动在相应的字段上创建唯一索引手动创建:用户可以在其他列上创建索引,以加速查询速度创建/删除索引可以使用createindex语句手动创建索引createindex索引名on表名(列名[,列名])删除

2、索引使用dropindex语句删除索引创建索引的原则下列情况下可以创建索引字段取值分布范围很广字段中报刊大量的空值字段经常出现在where子句或者连接条件中表经常被访问、数据量很大,且通常每次访问的数据量小于记录总量的2%-4%下列情况可以不用创建索引表很小字段不经常出现在where子句中每次访问的数据量大于记录总数的2%-4%表经常更新被索引的字段作为表达式的一部分被引用查看索引查询用户字典视图user_indexes可得到用户的所有索引查询用户字典视图user_ind_columns可以获知索引建立在哪些字段上序

3、列序列是用于生成唯一、连续序号的对象序列可以是升序的,也可以是降序的使用CREATESEQUENCE语句创建序列SQL>CREATESEQUENCEtoys_seqSTARTWITH10INCREMENTBY10MAXVALUE2000MINVALUE10NOCYCLECACHE10;指定第一个序号从10开始指定序号之间的间隔为10表示序列的最大值为2000表示序列的最小值为10在达到最大值后停止生成下一个值指定内存中预先分配的序号数访问序列通过序列的伪列来访问序列的值NEXTVAL返回序列的下一个值CURRVAL返

4、回序列的当前值SQL>INSERTINTOtoys(toyid,toyname,toyprice)VALUES(toys_seq.NEXTVAL,‘TWENTY’,25);SQL>INSERTINTOtoys(toyid,toyname,toyprice)VALUES(toys_seq.NEXTVAL,’MAGICPENCIL’,75);指定序列的下一个值SQL>SELECTtoys_seq.CURRVALFROMdual;检索序列的当前值更改和删除序列SQL>ALTERSEQUENCEtoys_seqMAXVALU

5、E5000CYCLE;使用ALTERSEQUENCE语句修改序列,不能更改序列的STARTWITH参数使用DROPSEQUENCE语句删除序列SQL>DROPSEQUENCEtoys_seq;数据库的查询SELECT语句的格式SELECT[predicate]{*

6、table.*

7、[table.]field[,[table.]field2[,...]]}[ASalias1[,alias2[,...]]]FROMtableexpression[,...][WHERE...][GROUPBY...][HAVING...]

8、[ORDERBY...][WITHOWNERACCESSOPTION]SELECT中的条件语句FROM条件子句SELECTfieldlistFROM表名WHERE条件子句SELECTfieldlistFROM表名WHERE条件DISTINCT属性词用法SELECT[*

9、DISTINCT]FROMtableSELECT中的条件语句BETWEEN...AND运算符expr[Not]BETWEENvalue1ANDvalue2LIKE操作数expressionLIKE"pattern"expression空值的查询列的别名

10、数据查询-排序1升序排列SELECTStudentIDAs学员编号,(Score*0.9+5)As综合成绩FROMScoreWHERE(Score*0.9+5)>60ORDERBYScore降序排列SELECTAu_Lname+'.'+Au_fNameASEMPFromAuthorsUnionSELECTfName+'.'+LNameASEMPFromEmployeeORDERBYEMPDESC数据查询-排序2按多列排序SELECTStudentIDAs学员编号,ScoreAs成绩FROMScoreWHEREScor

11、e>60ORDERBYScore,CourseID思考:排序中的字段,可以使用表达式吗?——如果不可以,请说明原因;——如果可以,请举例说明;问题成绩表中存储了所有学员的成绩,我想知道:学员的总成绩、平均成绩、有成绩的学员总共有多少名怎么办?聚合函数-1SUMAVGSELECTSUM(ytd_sales)FROMtitlesWHEREtype=

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

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

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