1、员工部门表综合查询 题(1) 查询20部门的所有员工信息。(2) 查询所有工种为CLERK的员工的员工号、员工名和部门号。(3) 查询奖金(COMM)高于工资(SAL)的员工信息。(4) 查询奖金高于工资的20%的员工信息。(5) 查询10号部门中工种为MANAGER和20部门中工种为CLERK的员工的信息。(6) 查询所有工种不是MANAGER和CLERK,且工资大于或等于2000的员工的详细信息。(7) 查询有奖金的员工的不同工种。(8) 查询所有员工工资与奖金的和。(9) 查询没有奖金或奖金低于100的员工信息。(10) 查询各月倒数第3天入职的员工信息。(11) 查询工龄大于或等于25
2、年的员工信息。(12) 查询员工信息,要求以首字母大写的方式显示所有员工的姓名。(13) 查询员工名正好为6个字符的员工的信息。(14) 查询员工名字中不包含字母“”的员工。(15) 查询员工姓名的第二字母为“M”的员工信息。(16) 查询所有员工姓名的前三个字符。(17) 查询所有员工的姓名,如果包含字母“S”,则用“s”替换。(18) 查询员工的姓名和入职日期,并按入职日期从先到后进行排序。(19) 显示所有员工的姓名、工种、工资和奖金,按工种降序排序,若工种相同则按工资升序排序。(20) 显示所有员工的姓名、入职的年份和月份,按入职日期所在的月份排序,若月份相同则按入职的年份排序。(21
3、) 查询在2月份入职的所有员工信息。(22) 查询所有员工入职以来的工作期限,用“XX年XX月XX日”的形式表示。(23.1) 查询至少有一个员工的部门信息。(23.2) 查询至少有两个员工的部门信息。(24) 查询工资比SMITH员工工资高的所有员工信息。(25) 查询所有员工的姓名及其直接上级的姓名。(26) 查询入职日期早于其直接上级领导的所有员工信息。(27) 查询所有部门及其员工信息,包括那些没有员工的部门。(28) 查询所有员工及其部门信息,包括那些还不属于任何部门的员工。(29) 查询所有工种为CLERK的员工的姓名及其部门名称。(30) 查询最低工资大于2500的各种工作。(3
4、1) 查询平均工资低于2000的部门及其员工信息。(32) 查询在SALES部门工作的员工的姓名信息。(33) 查询工资高于公司平均工资的所有员工信息。(34) 查询出与SMITH员工从事相同工作的所有员工信息。(35) 列出工资等于30部门中某个员工的工资的所有员工的姓名和工资。(36) 查询工资高于30部门工作的所有员工的工资的员工姓名和工资。(37) 查询每个部门中的员工数量、平均工资和平均工作年限。(38) 查询从事同一种工作但不属于同一部门的员工信息。(39) 查询各个部门的详细信息以及部门人数、部门平均工资。(40) 查询各种工作的最低工资。(41) 查询各个部门中不同工种的最高工
5、资。(42) 查询10号部门员工及其领导的信息。(43) 查询各个部门的人数及平均工资。(44) 查询工资为某个部门平均工资的员工的信息。(45) 查询工资高于本部门平均工资的员工的信息。(46) 查询工资高于本部门平均工资的员工的信息及其部门的平均工资。(47) 查询工资高于20号部门某个员工工资的员工的信息。(48) 统计各个工种的员工人数与平均工资。(49) 统计每个部门中各工种的人数与平均工资。(50) 查询其他部门中工资、奖金与30号部门某员工工资、奖金都相同的员工的信息。没有查询结果(51) 查询部门人数大于5的部门的员工信息。(52) 查询所有员工工资都大于1000的部门的信息。
6、(53) 查询所有员工工资都大于1000的部门的信息及其员工信息。(54) 查询所有员工工资都在9003000之间的部门的信息。(55) 查询有工资在9003000之间的员工所在部门的员工信息。(56) 查询每个员工的领导所在部门的信息。(57) 查询人数最多的部门信息。(58) 查询30号部门中工资排序前3名的员工信息。(59) 查询所有员工中工资排序在5到10名之间的员工信息。(60) 查询指定年份之间入职的员工信息。 答案:员工部门表综合查询60题(上)CREATE DATABASE oa;USE oa;CREATE TABLE dept(deptno INT PRIMARY KEY,d
7、name VARCHAR(20),loc VARCHAR(20)DROP TABLE empCREATE TABLE emp(empno INT PRIMARY KEY,ename VARCHAR(20) NOT NULL,job VARCHAR(20) CHECK (job IN (CLERK,SALESMAN,MANAGER,SALESMAN,ANALYST),mgp INT ,hiredate DATETIME ,sal DECIMAL(10,2),comm DECIMAL(10,2),DEPTNO INT FOREIGN KEY REFERENCES dept(deptno)INSER
8、T INTO dept VALUES (10,ACCOUNTING,NEWTORK)INSERT INTO dept VALUES (20,RESEARCH,DALLAS)INSERT INTO dept VALUES (30,SALES,CHICAGO)INSERT INTO dept VALUES (40,OPERATIONS,BOSTON)insert into emp values(7369,SMITH,CLERK,7902,1980-12-17,1640,NULL,20);insert into emp values(7499,ALLEN,SALESMAN,7698,1981-2-2
9、0,11400,300,30);insert into emp values(7521,WARD,SALESMAN,7698,1981-2-22,5200,500,30);insert into emp values(7566,JOENS,MANAGER,7839,1981-4-2,7015,NULL,20);insert into emp values(7654,MARTIN,SALESMAN,7698,1981-9-28,5200,1400,30);insert into emp values(7698,BLAKE,MANAGER,7839,1981-5-1,5900,NULL,30);i
10、nsert into emp values(7782,CLARK,MANAGER,7839,1981-6-9,2470,NULL,10);insert into emp values(7788,SCOTT,ANALYST,7566,1987-4-19,3040,NULL,20);insert into emp values(7844,TURNER,SALESMAN,7698,1980-12-17,6200,0,30);insert into emp values(7876,ADAMS,CLERK,7788,1981-9-8,2240,NULL,20);insert into emp value
11、s(7900,JAMES,CLERK,7698,1987-5-23,4000,NULL,30);insert into emp values(7902,FORD,ANALYST,7566,1981-12-3,3040,NULL,20);insert into emp values(7934,MILLER,CLERK,7782,1982-12-3,2620,NULL,10);SELECT * FROM emp;select * from dept;员工部门表综合查询60题(1) 查询20部门的所有员工信息。select * from emp where deptno=20;(2) 查询所有工种为
12、CLERK的员工的员工号、员工名和部门号。select empno,ename,deptno from emp where job=CLERK(3) 查询奖金(COMM)高于工资(SAL)的员工信息。select * from emp where isnull(comm,0)sal(4) 查询奖金高于工资的20%的员工信息。select * from emp where isnull(comm,0)sal*0.2(5) 查询10号部门中工种为MANAGER和20部门中工种为CLERK的员工的信息。select * from empwhere job=MANAGER and deptno=10u
13、nion select * from empwhere job=CLERK and deptno=20-select * from empwhere (job=MANAGER and deptno=10) or (job=CLERK and deptno=20)(6) 查询所有工种不是MANAGER和CLERK,-且工资大于或等于2000的员工的详细信息。select * from empwhere job not in(MANAGER,CLERK) and sal=2000(7) 查询有奖金的员工的不同工种。select distinct job from empwhere comm is
14、not null(8) 查询所有员工工资与奖金的和。select ename,sal isnull(comm,0) 实发工资 from emp(9) 查询没有奖金或奖金低于100的员工信息。select * from empwhere comm is null or comm=25(12) 查询员工信息,要求以首字母大写的方式显示所有员工的姓名。select upper(SUBSTRING(ename,1,1) lower(substring(ename,2,(len(ename)-1)from emp(13) 查询员工名正好为6个字符的员工的信息。select ename from emp
15、where len(ename)=6(14) 查询员工名字中不包含字母“”的员工。select ename from emp where ename not like %(15) 查询员工姓名的第二字母为“M”的员工信息。select ename from empwhere ename like _M%(16) 查询所有员工姓名的前三个字符。select ename 员工姓名,substring(ename,1,3) 员工姓名的前三个字符from emp(17) 查询所有员工的姓名,如果包含字母“S”,则用“s”替换。-返回被替换了指定子串的字符串。-REPLACE (,) -用string_
16、expression3 替换在string_expression1 中的子串string_expression2。select replace(ename,S,s)from emp(18) 查询员工的姓名和入职日期,并按入职日期从先到后进行排序。select ename,hiredatefrom emporder by hiredate(19) 显示所有员工的姓名、工种、工资和奖金,按工种降序排序,-若工种相同则按工资升序排序。select ename,job,sal,commfrom emporder by job desc(20) 显示所有员工的姓名、入职的年份和月份,-按入职日期所在的月
17、份排序,若月份相同则按入职的年份排序。select ename,hiredate 入职日期,DATENAME(yy,hiredate) 入职的年份,datename(mm,hiredate) 入职的月份from emp(21) 查询在2月份入职的所有员工信息。select * from empwhere datename(mm,hiredate)=2(22) 查询所有员工入职以来的工作期限,用“XX年XX月XX日”的形式表示。select ename,datename(yy,hiredate) 年 datename(mm,hiredate) 月 datename(dd,hiredate) 日
18、工作期限from emp(23.1) 查询至少有一个员工的部门信息。select d.dname,count(empno) 部门人数from emp eright join dept d on d.deptno=e.deptnogroup by d.dname,e.deptnohaving count(empno)=1(23.2) 查询至少有两个员工的部门信息。select d.dname,count(empno) 部门人数from emp eright join dept d on d.deptno=e.deptnogroup by d.dname,e.deptnohaving count(
19、empno)1(24) 查询工资比SMITH员工工资高的所有员工信息。select *from empwhere sal(select sal from emp where ename=SMITH)(25) 查询所有员工的姓名及其直接上级的姓名。select ename 员工的姓名,(select ename from emp e2 where e2.empno=e1.mgp) 直接上级from emp e1(26) 查询入职日期早于其直接上级领导的所有员工信息。select ename 员工的姓名,hiredate 入职日期,(select ename from emp e2 where e
20、2.empno=e1.mgp) 直接上级,(select hiredate from emp e2 where e2.empno=e1.mgp) 直接上级入职日期from emp e1where e1.hiredate2500 员工部门表综合查询60题(下)(31) 查询平均工资低于2000的部门及其员工信息。select *from dept left outer join emp on dept.deptno=emp.deptnowhere dept.deptno in (select deptno from empgroup by deptnohaving avg(sal)(select
21、 avg(sal)from emp)(34) 查询出与SMITH员工从事相同工作的所有员工信息。select * from emp where job = (select job from emp where ename=SMITH)(35) 列出工资等于30部门中某个员工的工资的所有员工的姓名和工资。select *from empwhere sal in (select salfrom empwhere deptno=30) and deptno!=30(36) 查询工资高于30部门工作的所有员工的工资的员工姓名和工资。select *from empwhere sal all(selec
22、t salfrom empwhere deptno=30) (37) 查询每个部门中的员工数量、平均工资和平均工作年限。select dname 部门,count(ename) 员工数量,isnull(avg(sal),0) 平均工资,isnull(avg(datediff(yy,hiredate,getdate(),0) 平均工作年限from dept d left outer join emp e on d.deptno=e.deptnogroup by d.dname(38) 查询从事同一种工作但不属于同一部门的员工信息。select *from emp e1where e1.job i
23、n (select distinct e2.jobfrom emp e2where e2.deptno != e1.deptno ) (39) 查询各个部门的详细信息以及部门人数、部门平均工资。select d.dname 部门名称,d.deptno 部门编号,count(e.empno) 人数,avg(e.sal) 平均工资 from dept d left outer join emp e on d.deptno=e.deptnogroup by d.deptno,d.dname(40) 查询各种工作的最低工资。select job 工种,min(sal) 最低工资from empgrou
24、p by job(41) 查询各个部门中不同工种的最高工资。select dname 部门名称,job 工种,max(isnull(sal,0) 最高工资from dept d left join emp e on d.deptno=e.deptnogroup by job,dname(42) 查询10号部门员工及其领导的信息。select deptno 部门,ename 姓名 ,(select e2.ename from emp e2 where e2.mgp=e1.empno) 上级领导from emp e1where deptno=10(43) 查询各个部门的人数及平均工资。select
25、 dname 部门名称,count(ename) 部门人数,avg(isnull(sal,0) 平均工资from dept d left outer join emp e on d.deptno=e.deptnogroup by d.dname(44) 查询工资为某个部门平均工资的员工的信息。select * from empwhere sal in(select avg(sal)from emp group by deptno)(45) 查询工资高于本部门平均工资的员工的信息。select *from emp e1where sal(select avg(sal)from emp e2whe
26、re e2.deptno=e1.deptno)(46) 查询工资高于本部门平均工资的员工的信息及其部门的平均工资。select *,(select avg(sal) from emp e2 where e2.deptno=e1.deptno) 部门平均工资from emp e1where sal(select avg(sal) from emp e2 where e2.deptno=e1.deptno)(47) 查询工资高于20号部门某个员工工资的员工的信息。select *from emp e1where sal any(select sal from emp e where deptno=20)(48)统计各个工种的员工人数与平均工资。select job 工种,count(empno) 员工人数,avg(sal) 平均工资from empgroup by job (49) 统计每个部门中各工种的人数与平均工资。select dname 部门,job 工种,count(empno) 人数,avg(isnull(sal,0) 平均工资from dept d left outer join emp e on d.deptno=e.deptnogroup by job,dname(50) 查询其他部门中工资、奖金与30号部门某员工工资、-奖金都相同的员工的信息。没有查询结果sele
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1