软件测试人员常用SQL掌握_第1页
软件测试人员常用SQL掌握_第2页
软件测试人员常用SQL掌握_第3页
软件测试人员常用SQL掌握_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、精选优质文档-倾情为你奉上对人员而言必须掌握两种语言:第一种是DML,数据操纵语言 (Data Manipulation Language) 是语言中,负责对对象运行数据访问的指令集,以INSERT、UPDATE、DELETE三种指令为核心,分别代表插入、更新与删除。第二种是:DQL,数据查询语言 (Data Query Language) 是SQL语言中,负责进行数据查询而不会对数据本身进行修改的语句,这是最基本的SQL语句。核心指令为SELECT,以及一些辅助指令,如FROM、WHERE等,FROM:表示来源,可以搭配JOIN做链接查询; WHERE:过滤条件;GROUP

2、0;BY:在使用聚合函数时用到,如SUM,COUNT,MAX,AVG;HAVING:对聚合结果进行筛选,这是和WHERE的不同点;ORDER BY:排序。以下是必须掌握的SQL习题:1、列出至少有一个员工的所有部门select d.*,ed.coufrom dept d,(select deptno,count(empno) cou from empgroup by deptno having count(empno)>1) edwhere d.deptno=ed.deptno;2、列出薪金比“SMITH”多的所有员工。  ·求出SMITH的薪金select

3、 sal from emp where ename='SMITH' ·求所有select * from empwhere sal>(select sal from emp where ename='SMITH');3、列出所有员工的姓名及其直接上级的姓名select e.ename,m.enamefrom emp e,emp mwhere e.mgr=m.empno(+);4、列出受雇日期早于其直接上级的所有员工的编号,姓名,部门名称select e.empno,e.ename,d.dnamefrom emp e,emp m,dept

4、dwhere e.mgr=m.empno and e.hiredate<m.hiredate and e.deptno=d.deptno;5、列出部门名称和这些部门的员工信息,同时列出那些没有员工的部门,select d.deptno,d.dname,e.empno,e.enamefrom dept d,emp ewhere d.deptno=e.deptno(+);6、列出所有“CLERK”人员的姓名及其部门名称,部门的人数select e.ename,d.dname,ed.coufrom emp e,dept d,(select deptno,count(empno) cou fro

5、m emp group by deptno) edwhere job='CLERK'and e.deptno=d.deptno and ed.deptno=e.deptno;7、列出最低薪金大于1500的各种工作及从事此工作的全部雇员人数·按工作分组,分组条件是最低薪金大于1500select job,min(sal)from empgroup by job having min(sal)>1500;·求全部的雇员人数select count(e.empno),e.jobfrom emp ewhere e.job in(select job 

6、           from emp            group by job having min(sal)>1500)group by e.job;8、列出在部门“SALES”工作的员工姓名,假定不知道销售部的部门编号·通过dept表查询出销售部的部门编号select deptno from dept where dname='SALES'&#

7、183;将之前的查询作为子查询select enamefrom emp where deptno=(select deptno from dept where dname='SALES');9、列出薪金高于公司平均薪金的所有员工,所在部门,上级领导,公司的工资等级。·公司的平均工资select avg(sal) from emp;·列出薪金高于平均薪金select * from empwhere sal>(select avg(sal) from emp);·与部门表关联查询出所在部门的信息select e.*,d.locfrom emp e

8、,dept dwhere sal>(select avg(sal) from emp)and e.deptno=d.deptno;·与自身关联查询上级领导select e.ename,e.empno,m.empno,m.ename,d.deptno,d.dname,d.locfrom emp e,dept d,emp mwhere e.sal>(select avg(sal) from emp)          and e.deptno=d.deptno  &#

9、160;       and e.mgr=m.empno(+);·求出雇员的工资等级select e.ename,e.empno,s.grade,m.empno,m.ename,d.deptno,d.dname,d.locfrom emp e,dept d,emp m,salgrade swhere e.sal>(select avg(sal) from emp)          and e.deptno=d.deptno

10、60;         and e.mgr=m.empno(+)           and e.sal between s.losal and s.hisal;10、列出与scott从事相同工作的所有员工及部门名称·找到Scott的工作select job from emp where ename='SCOTT'·找出与其工作相同的雇员select ename,empno,job

11、,salfrom empwhere job=(select job from emp where ename='SCOTT');·这是不应该出现SCOTT在加个条件;and ename!='SCOTT'select ename,empno,job,salfrom empwhere job=(select job from emp where ename='SCOTT')           and ename!='SCOTT

12、9;·部门名称select e.ename,e.empno,e.job,e.sal,d.dname,d.locfrom emp e,dept dwhere job=(select job from emp where ename='SCOTT')           and ename!='SCOTT'   and e.deptno=d.deptno;11、列出薪金等于部门30中员工的薪金的所有员工的姓名和薪金·列出30部门

13、员工薪金select sal from emp where deptno=30;·以上作为子查询select ename,salfrom emp where sal in(select sal from emp where deptno=30)                 and deptno!=30;12、列出薪金高于部门30中员工的薪金的所有员工的姓名和薪金、部门名称·使用>ALLselect

14、 ename,salfrom emp where sal >all(select sal from emp where deptno=30) and deptno!=30;·使用表关联select e.ename,e.sal,d.dname,d.locfrom emp e,dept d where e.sal >all(select sal from emp where deptno=30) and e.deptno!=30 and d.deptno=e.deptno;13、列出在每个部门工作的员工数量,平均工资和平均服务期限select d.dname,count(e.empno),avg(sal),avg(months_between(sysdate,e.hiredate)/12)yearfrom emp e,dept dwhere e.deptno=d.deptnogroup by d.dname;14、列出所有员工的姓名,部门名称和工资select e.ename,d.dname,e.salfrom emp e,dept dwhere e.deptno=d.deptno;15、列出所有部门

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论