使用sql语句在emp员工表中实现各种操作
emp员工表(empno员工号/ename员工姓名/job工作/mgr上级编号/hiredate受雇日期/sal薪金/comm佣金/deptno所属部门编号)
工资 = 薪金 + 佣金
在emp 表中完成如下练习:
1、 在emp表中查询出所有记录的姓名、部门编号、薪水,并且列名要显示为中文。
2、 在emp表中查询出薪水大于1500的记录,并且按照薪水的降序排列。
3、 在emp表中查询出comm字段为空值的记录。
4、 查询出emp表中含有几个部门的记录。(用DISTINCT去除重复记录)
5、 在emp表中查询出部门编号为10或20的记录(要求使用IN关键字)
6、 在emp表中查询出姓名的第二个字母为A的记录。
7、 查询出emp表中总共有多少条记录。
8、 查询emp表中出每个部门的部门代码、薪水之和、平均薪水。
具体实现如下:
#创建数据库 CREATE DATABASE test1; #创建表 CREATE TABLE emp; #使用数据库 USE test1; #创建列名 CREATE TABLE emp ( empno int(11) NOT NULL AUTO_INCREMENT, ename varchar(20), job varchar(30), mgr int(11), hiredate varchar(20), sal double(10,2), comm double(10,2), deptno int(11), PRIMARY KEY (empno) ) ENGINE=InnoDB AUTO_INCREMENT=9 DEFAULT CHARSET=utf8; # 赋值 Insert into emp values (1,'张三','经理',10,'2010/10/05',10000.00,5000.00,10), (2,'李四','秘书',8,'2012/02/10',8000.00,4000.00,30), (3,'may','员工',4,'2015/03/24',5100.00,2600.00,10), (4,'马六','员工',4,'2015/08/16',5000.00,NULL,40), (5,'孙七','经理',10,'2011/03/01',12000.00,5000.00,30), (6,'赵八','秘书',8,'2013/06/18',8000.00,3000.00,20), (7,'钱九','员工',4,'2015/02/29',5000.00,3500.00,20), (8,'周十','员工',4,'2016/03/16',5000.00,NULL,30);
问题解答:
# 1.在emp表中查询出所有记录的姓名、部门编号、薪水,并且列名要显示为中文。 SELECT *FROM emp; SELECT ename AS '员工姓名',IFNULL(sal,0)+IFNULL(comm,0) AS '薪金' ,deptno AS '所属部门编号' FROM emp; # 2、在emp表中查询出薪水大于1500的记录,并且按照薪水的降序排列。 SELECT *FROM emp ORDER BY (IFNULL(sal,0)+IFNULL(comm,0))>1500 DESC; # 3、在emp表中查询出comm字段为空值的记录。 SELECT *FROM emp WHERE comm IS NULL; # 4、查询出emp表中含有几个部门的记录。(用DISTINCT去除重复记录) SELECT COUNT(DISTINCT deptno)AS '部门总数' FROM emp; # 5、在emp表中查询出部门编号为10或20的记录(要求使用IN关键字) SELECT *FROM emp WHERE deptno IN(10,20); # 6、在emp表中查询出姓名的第二个字母为A的记录。 SELECT *FROM emp WHERE ename LIKE "_A%"; # 7、查询出emp表中总共有多少条记录。 SELECT COUNT(*)AS '总记录数' FROM emp; # 8、查询emp表中出每个部门的部门代码、薪水之和、平均薪水。 SELECT AVG(sal+IFNULL(comm,0))AS '平均薪水',SUM(sal+IFNULL(comm,0))AS '薪水之和',deptno AS '部门编号' FROM emp GROUP BY deptno;
数据库技术:使用sql语句在emp员工表中实现各种操作地址:https://blog.csdn.net/CSDN9825/article/details/110666852
需要了解更多数据库技术:使用sql语句在emp员工表中实现各种操作,都可以关注数据库技术分享栏目—计算机技术网(www.ctvol.com)!
本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。
ctvol管理联系方式QQ:251552304
本文章地址:https://www.ctvol.com/dtteaching/631513.html