>>与软件开发有关的知识:操作系统,数据库,网络通信等 书籍支持  卫琴直播  品书摘要  在线测试  资源下载  联系我们
发表一个新主题 开启一个新投票 回复文章 您是本文章第 19649 个阅读者 刷新本主题
 * 贴子主题:  SQL查询语句练习题 回复文章 点赞(0)  收藏  
作者:Jacky    发表时间:2020-03-23 18:45:48     消息  查看  搜索  好友  邮件  复制  引用

                                                                                                

题目: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

                                                                                        
----------------------------
原文链接:https://blog.csdn.net/x289231673/article/details/78338628

程序猿的技术大观园:www.javathinker.net



[这个贴子最后由 flybird 在 2020-03-28 12:14:58 重新编辑]
网站系统异常


系统异常信息
Request URL: http://www.javathinker.net/WEB-INF/lybbs/jsp/topic.jsp?postID=2999&pages=7

java.lang.NullPointerException

如果你不知道错误发生的原因,请把上面完整的信息提交给本站管理人员