004第四章 表查询 完.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
004第四章 表查询 完

第四章查询目标:掌握简单查询掌握复杂查询掌握分页查询准备知识:▲emp、deptno、salgrade表结构Empno—员工编号;ename—员工姓名;job—工作、职位、岗位Mgr---上级编号;hiredate—入职时间;sal—工资;comm—奖金;deptno—部门编号Dname—部门名称;loc—部门地址;crade—等级;losal—最低工资;hisal—最高工资▲SQL(Structured Query Language结构化查询语言)语句分类:◆DML:(Data Manipulation Language 数据操作语言)由insert、update、delete三个组成◆DDL: (Data Definition Language 数据定义语言) 由create、drop、alter、truncate组成◆DCL: (Data Control Language 数据控制语言) 由 grant、revoke 组成◆查询语句:由select组成他是SQL中用的最多的。◆事务控制语言:由commit、rollback、savepoint组成Oracle中的简单查询★不带条件的查询: ▼查看表结构:SQL desc emp;▼查看表中所有列;(尽量少用select *)SQLselect * from emp;▼查看部分列;SQLselect ename,job,sal from emp;▼去掉重复的行 distinctSQLselect distinct job from emp;▼统计表中记录的条数SQLselect count(*) from emp;★使用算术运算符▼查询emp表中所有员工的姓名,年薪 (不考虑奖金)SQLselect ename,sal,sal*12 from emp;▼查询emp表中所有员工的姓名,年薪 (考虑奖金)SQL select ename,sal,comm,(sal+comm)*12 from emp;注意:上面的查询结果出问题,没有奖金的人年薪都为空。因为oracle中任何数据与null运行结果都为null。可以使用nvl函数处理SQL select ename,sal,comm,(sal+nvl(comm,0))*12 from emp;给列取别名SQL select ename,sal,comm,(sal+nvl(comm,0))*12 as “年薪” from emp;//as可以省略★带条件的查询: ▼查询20号部门的员工信息SQL select * from emp where deptno=20;▼查询SMITH的工作岗位,工资,部门编号SQL select ename,job,sal,deptno from emp where ename=SMITH;注意:oracle不分大小写,但是oracle中存储的数据是区分大小写的。▼查询出工资高于3000的员工姓名,工资,部门编号SQL select ename,sal,deptno from emp where sal3000;▼查询出1981.6.30号之后入职的员工信息SQL select * from emp where hiredate30-6月-1981;▼查询出年薪(计算奖金,年薪按12个月计算)高于20000的员工姓名、工资、奖金、年薪SQL select ename,sal,comm,(sal+nvl(comm,0))*12 from emp where (sal+nvl(comm,0))*1220000;★使用逻辑操作符:and、or、not;between…and、in▼查询出工资在2000--3000之间的员工信息SQL select * from emp where sal=2000 and sal=3000;SQL select * from emp where sal between 2000 and 3000;//包含2000与3000▼查询出编号为7369,7499,7788的员工信息SQL select * from emp where empno=7369 or empno=7499 or empno=7788;SQL select * from emp where empno in(7369,7499,7788);▼查询出工作岗位不为MANAGER的员工信息SQL select * from emp where job!=MANAGER;//oracle中不等号可以用!= 或 SQL select * from emp where not job=MANAGER;▼查询出20号部门中工资高于或等于2000的员工信息SQL select * from emp where deptno

文档评论(0)

xcs88858 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档