oracle 子查询上机训练

oracle 子查询上机训练

ID:6048795

大小:27.50 KB

页数:7页

时间:2018-01-01

oracle 子查询上机训练_第1页
oracle 子查询上机训练_第2页
oracle 子查询上机训练_第3页
oracle 子查询上机训练_第4页
oracle 子查询上机训练_第5页
资源描述:

《oracle 子查询上机训练》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、Oracle子查询上机一、简单的查询语句1、查询表结构sql>descdept;Deptdeptno(部门号),dname(部门名称)Empempno(工号)ename(姓名),sal(岗位工资),deptno(部门),comm(补助),mgr(上级)job(岗位)2、查询所有列sql>select*fromdept;3、查询指定列sql>selectename,sal,job,deptnofromemp;4、如何取消重复行sql>selectdistinctdeptno,jobfromemp;5、使用算术表达式实例:显示每个雇

2、员的年工资sql>selectename,sal*12"年工资"fromemp;6、使用列的别名sql>selectename"姓名",sal*12as"年收入"fromemp;7、如何处理null值说明:对于null值,我们可以使用nvl函数来处理。实例:显示每个雇员的年工资(包括奖金)sql>selectename,sal*12+nvl(comm,0)*12"年收入"fromemp;8、如何连接字符串sql>selectename

3、

4、'isa'

5、

6、jobfromemp;9、使用where子句实例:如何显示工资高于3000的员

7、工sql>selectename,salfromempwheresal>3000;实例:如何查找1982.1.1后入职的员工实例:如何显示工资在2000到2500的员工情况10、使用like操作符(1)%:表示任意0到多个字符。(2)_:表示任意单个字符。实例:如何显示首个字符为S的员工姓名和工资sql>selectename,salfromempwhereenamelike'S%';实例:如何显示第三个字符为大写O的所有员工的姓名和工资sql>selectename,salfromempwhereenamelike'__O%'

8、;11、在where条件中使用in实例:如何显示empno为123,345,800的雇员情况12、使用isnull的操作符实例:如何显示没有上级的雇员的情况13、使用逻辑操作符号实例:查询工资高于500或是岗位为MANAGER的雇员,同时还要满足他们的姓名首先字母为大写的J14、使用orderby子句实例:如何按照工资中低到高的顺序显示雇员的信息实例:按照部分号升序而雇员的工资降序排列15、使用列的别名排序sql>selectename,sal*12"年薪"fromemporderby"年薪"desc;注:别名需要使用双引号括起

9、来。二、复杂的查询语句说明:在实际应用中经常需要执行复杂的数据统计,经常需要显示多张表的数据,现在我们给大家介绍较为复杂的select语句。1、数据分组——max,min,avg,sum,count实例:如何显示所有员工中最高工资和最低工资selectmax(sal),min(sal)fromemp实例:显示所有员工的平均工资和工资总和selectavg(sal),sum(sal)fromemp实例:计算共有多少员工selectcount(empno)fromemp实例:请显示工资最高的员工的名字,工作岗位selecteanme

10、,dnamefromdept,empwheresal=(selectmax(sal)fromemp)实例:显示工资高于平均工资的员工selectenamefromempwheresal>=(selectavg(sal)fromemp)2、groupby和having子句groupby用于对查询的结果分组统计。having用于限制分组显示结果。实例:如何显示每个部门的平均工资和最高工资selectavg(sal),max(sal)fromempgroupbydeptno实例:显示每个部门的每种岗位的平均工资和最低工资selecta

11、vg(sal),min(sal)fromempgroupbydeptno,job实例:显示平均工资低于2000的部门号和他的平均工资selectdeptno,avg(sal)fromempgroupby对数据分组的总结1、分组函数只能出现在选择列表、having、orderby子句中。2、如果在select语句中同时包含groupby、having、orderby,那么他们的顺序是groupby,having,orderby。3、在选择列中如果有列、表达式和分组函数,那么这些列和表达式必须有一个出现在groupby子句中,否则就

12、会出错。如:selectdeptno,avg(sal),max(sal)fromempgroupbydeptnohavingavg(sal)>2000orderbyavg(sal);这里deptno就一定要出现在groupby中。三、多表查询说明:多表查询是指基

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

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

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