oracle9i第5章sql基础

oracle9i第5章sql基础

ID:39974413

大小:552.50 KB

页数:59页

时间:2019-07-16

oracle9i第5章sql基础_第1页
oracle9i第5章sql基础_第2页
oracle9i第5章sql基础_第3页
oracle9i第5章sql基础_第4页
oracle9i第5章sql基础_第5页
资源描述:

《oracle9i第5章sql基础》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第四章SQL基础SELECT语句SELECT的简单语法:SELECT[DISTINCT

2、ALL]{*

3、column1[,column2]...}FROM{table_1

4、(subquery)}[alias][,{table_2

5、(subquery)}[alias]]...[WHEREcondition][CONNECTBYcondition[STARTWITHcondition][GROUPBYexpn][HAVINGexpn][{UNION[ALL]

6、INTERSECT

7、MINUS}SELECT...][ORDERBY[expn][AS

8、C

9、DESC][FORUPDATE[OF[user.]table

10、view]column][NOWAIT]简单SELECT查询selectdeptno,dname,locfromdept;selectdeptno,dname,locfromdeptorderbydname;select*fromdeptorderbydeptnodesc,dname;select*fromdeptorderbydname,deptnoasc;select*fromdeptwherednamelike'%SA%'orderbydeptnodesc,dname

11、;注意:在SQL语句中,引用的字符串必须在单引号内,而不是双引号。如果需要在字符串内放“‘”号,应该写两次。比如语句“select*fromdeptwheredname='SA''ES'”中的“SA''ES”字符就是如此。要注意空值的表示方法是ISNULL或ISNOTNULL。在Oracle中使用‘%’来匹配任何字符串使用‘_’来匹配任何字符。汇总数据selectcount(*)fromdept;selectdeptno,count(*)fromempgroupbydeptno;将返回工资总额小于10000的部门和实际工资总额select

12、deptno,sum(sal)fromempgroupbydeptnohavingsum(sal)<10000;selectcount(distinctdeptno)fromemp;内连接selecta.empno,a.ename,a.job,b.dnamefromempa,deptbwherea.deptno=b.deptno;外连接外部关联关联了两个表并使得即使第二个表没有与第一个表符合的记录也能返回结果。selectdept.deptno,emp.ename,bonus.sal,bonus.commfromemp,dept,bonu

13、swhereemp.deptno(+)=dept.deptnoandbonus.ename(+)=emp.ename;注意:表可以外部连接到至多一个其它的表Oracle是使用的是’(+)’号作为外连接标识交叉连接交叉连接不带WHERE子句,它返回被连接的两个表所有数据行的笛卡尔积,返回到结果集合中的数据行数等于第一个表中符合查询条件的数据行数乘以第二个表中符合查询条件的数据行数。在表中有数据的情况下:selectycit.*,ycit1.*fromycit,ycit1;selectdeptno,enamefromempwheredeptn

14、oin(selectdeptnofromdept);selectdeptno,enamefromempawhereexists(selectlocfromdeptbwherea.deptno=b.deptno);连接查询比如有两张表emp和log_emp,其中emp中保存的是现行编制员工的编号和姓名,log_emp中保存着已经退休员工的编号和姓名。如果要查询所有员工信息,可以执行下面的操作:selectempno,enamefromempunionselectempno,enamefromlog_emp;使用空值空值是三值逻辑,以下列语句

15、为例:select*fromempwheredeptno=10anddeptno<>10等同于select*fromempwheredeptnoisnotnull插入新数据向表中插入行的一般用法:insertintotablename(column1,column2,column3,……)values(value1,value2,value3,……);注意:只要值的列表和表的列名精确匹配,就可以省略列全部列表。如,如果向dept表中增加一个新的部门,可以通过下面语句:insertintodept(deptno,dname,loc)valu

16、es(50,'System','Nanjing');插入一个查询结果insertintotablename(column1,column2,column3,……)subquery;insert

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

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

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