题目:SQL编程题 三、 SQL编程题 员工表emp:员工编号eid,姓名ename,工作职位title,雇佣日期hiretime,工资salary,奖金bonus,部门 depart 部门表dept

本文提供了一系列针对员工表和部门表的SQL查询案例,涵盖了基本查询、条件筛选、排序、聚合操作等多个方面,帮助读者掌握SQL的实际应用技巧。

一、 SQL编程题

员工表emp:员工编号eid,姓名ename,工作职位title,雇佣日期hiretime,工资salary,奖金bonus,部门 depart
部门表dept:部门编号did,名称dname,部门领导leader

1、  查询员工姓名及所做工作

SELECT ename,title from emp

2、  查询员工姓名及年薪

SELECT ename,salary*12 as salaryAll from emp

3、  查询工资大于4000的员工信息

SELECT * from emp where salary > 4000

4、  查询年薪大于20000的员工信息

SELECT * from emp where salary*12 > 20000

5、  查询没有奖金的员工

SELECT * fromemp where bonus = 0

6、  查询工资大于3000同时有奖金的员工信息

SELECT * from emp where salary > 3000 and bonus = 0

7、  查询工资大于3500但是小于5000的员工信息

SELECT * from emp where salary > 3000 and salary <5000

8、  查询编号是1001、1003、1004的员工信息

SELECT * from emp LEFT JOIN dept ON emp.depart = dept.didwhere emp.depart in (101,103,104)

9、  查询编号不是1001、1003、1004的员工信息

SELECT * from emp LEFT JOIN dept ON emp.depart = dept.didwhere emp.depart not in (101,103,104)

10、       查询员工姓名是3个字的员工信息

SELECT * from emp where char_length(ename) = 3

11、       查询姓张的员工信息

12、       SELECT * from emp where enamelike '张%'

13、       查询出员工工资没有包含6和8的员工信息

select * from (select * from emp where salary not like'%8%') as c where salary not like '%6%'

14、       按照工资由高到低查询员工信息

select * from emp ORDER BY salary

15、       要求查询出101部门的所有雇员信息,查询的信息按照工资由高到低排序,如果工资相等,则按照雇佣日期由早到晚排序。

select * from emp LEFT JOIN dept on emp.depart = dept.didwhere dept.did = 101 ORDER BY salary , hiretime

16、       查询101部门有多少员工,每月平均发多少工资

select avg(salary),count(*) from emp LEFT JOIN dept onemp.depart = dept.did where dept.did = 101

17、       查询101部门的所有员工信息,并显示所在部门名称

select * from emp LEFT JOIN dept on emp.depart = dept.did

18、       查询1001员工的部门领导信息

select * from emp LEFT JOIN dept on emp.depart = dept.didwhere dept.did = 101 and title = '经理'

19、       查询部门员工数量,平均工资,最低工资及最低工资的员工姓名

select ename,depart,'员工数量',minSalary,'平均工资' from emp,(select dept.didas bumen,count(*) as '员工数量',MIN(salary) asminSalary,AVG(salary) as '平均工资' from emp LEFT JOIN depton emp.depart = dept.did GROUP BY dept.did

) as a where emp.depart = a.bumen and emp.salary =a.minSalary

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值