mysql测试库-emp-dept

003-MySQL版本测试库-emp-dept初始化


DROP TABLE IF EXISTS `bonus`;
CREATE TABLE `bonus` (
  `ename` varchar(10) DEFAULT NULL,
  `job` varchar(9) DEFAULT NULL,
  `sal` int(11) DEFAULT NULL,
  `comm` int(11) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

-- ----------------------------
-- Table structure for dept
-- ----------------------------
DROP TABLE IF EXISTS `dept`;
CREATE TABLE `dept` (
  `deptno` int(11) NOT NULL,
  `dname` varchar(14)  DEFAULT NULL,
  `loc` varchar(13)  DEFAULT NULL,
  PRIMARY KEY (`deptno`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

-- ----------------------------
-- Table structure for emp
-- ----------------------------
DROP TABLE IF EXISTS `emp`;
CREATE TABLE `emp` (
  `empno` int(11) NOT NULL,
  `ename` varchar(10)  DEFAULT NULL,
  `job` varchar(9) DEFAULT NULL,
  `mgr` int(11) DEFAULT NULL,
  `hiredate` date DEFAULT NULL,
  `sal` float(7,2) DEFAULT NULL,
  `comm` float(7,2) DEFAULT NULL,
  `deptno` int(11) DEFAULT NULL,
  PRIMARY KEY (`empno`),
  KEY `fk_deptno` (`deptno`),
  CONSTRAINT `fk_deptno` FOREIGN KEY (`deptno`) REFERENCES `dept` (`deptno`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

-- ----------------------------
-- Table structure for salgrade
-- ----------------------------
DROP TABLE IF EXISTS `salgrade`;
CREATE TABLE `salgrade` (
  `grade` int(11) NOT NULL AUTO_INCREMENT,
  `losal` int(11) DEFAULT NULL,
  `hisal` int(11) DEFAULT NULL,
  PRIMARY KEY (`grade`)
) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8mb4;


INSERT INTO `dept` (`deptno`, `dname`, `loc`) VALUES ('10', 'ACCOUNTING', 'NEW YORK');
INSERT INTO `dept` (`deptno`, `dname`, `loc`) VALUES ('20', 'RESEARCH', 'DALLAS');
INSERT INTO `dept` (`deptno`, `dname`, `loc`) VALUES ('30', 'SALES', 'CHICAGO');
INSERT INTO `dept` (`deptno`, `dname`, `loc`) VALUES ('40', 'OPERATIONS', 'BOSTON');

INSERT INTO `emp` (`empno`, `ename`, `job`, `mgr`, `hiredate`, `sal`, `comm`, `deptno`) VALUES ('7369', 'SMITH', 'CLERK', '7902', '1980-12-17', '800.00', NULL, '20');
INSERT INTO `emp` (`empno`, `ename`, `job`, `mgr`, `hiredate`, `sal`, `comm`, `deptno`) VALUES ('7499', 'ALLEN', 'SALESMAN', '7698', '1981-02-20', '1600.00', '300.00', '30');
INSERT INTO `emp` (`empno`, `ename`, `job`, `mgr`, `hiredate`, `sal`, `comm`, `deptno`) VALUES ('7521', 'WARD', 'SALESMAN', '7698', '1981-02-22', '1250.00', '500.00', '30');
INSERT INTO `emp` (`empno`, `ename`, `job`, `mgr`, `hiredate`, `sal`, `comm`, `deptno`) VALUES ('7566', 'JONES', 'MANAGER', '7839', '1981-04-02', '2975.00', NULL, '20');
INSERT INTO `emp` (`empno`, `ename`, `job`, `mgr`, `hiredate`, `sal`, `comm`, `deptno`) VALUES ('7654', 'MARTIN', 'SALESMAN', '7698', '1981-09-28', '1250.00', '1400.00', '30');
INSERT INTO `emp` (`empno`, `ename`, `job`, `mgr`, `hiredate`, `sal`, `comm`, `deptno`) VALUES ('7698', 'BLAKE', 'MANAGER', '7839', '1981-05-01', '2850.00', NULL, '30');
INSERT INTO `emp` (`empno`, `ename`, `job`, `mgr`, `hiredate`, `sal`, `comm`, `deptno`) VALUES ('7782', 'CLARK', 'MANAGER', '7839', '1981-06-09', '2450.00', NULL, '10');
INSERT INTO `emp` (`empno`, `ename`, `job`, `mgr`, `hiredate`, `sal`, `comm`, `deptno`) VALUES ('7788', 'SCOTT', 'ANALYST', '7566', '1987-07-13', '3000.00', NULL, '20');
INSERT INTO `emp` (`empno`, `ename`, `job`, `mgr`, `hiredate`, `sal`, `comm`, `deptno`) VALUES ('7839', 'KING', 'PRESIDENT', NULL, '1981-11-07', '5000.00', NULL, '10');
INSERT INTO `emp` (`empno`, `ename`, `job`, `mgr`, `hiredate`, `sal`, `comm`, `deptno`) VALUES ('7844', 'TURNER', 'SALESMAN', '7698', '1981-09-08', '1500.00', '0.00', '30');
INSERT INTO `emp` (`empno`, `ename`, `job`, `mgr`, `hiredate`, `sal`, `comm`, `deptno`) VALUES ('7876', 'ADAMS', 'CLERK', '7788', '1987-07-13', '1100.00', NULL, '20');
INSERT INTO `emp` (`empno`, `ename`, `job`, `mgr`, `hiredate`, `sal`, `comm`, `deptno`) VALUES ('7900', 'JAMES', 'CLERK', '7698', '1981-12-03', '950.00', NULL, '30');
INSERT INTO `emp` (`empno`, `ename`, `job`, `mgr`, `hiredate`, `sal`, `comm`, `deptno`) VALUES ('7902', 'FORD', 'ANALYST', '7566', '1981-12-03', '3000.00', NULL, '20');
INSERT INTO `emp` (`empno`, `ename`, `job`, `mgr`, `hiredate`, `sal`, `comm`, `deptno`) VALUES ('7934', 'MILLER', 'CLERK', '7782', '1982-01-23', '1300.00', NULL, '10');

INSERT INTO `salgrade` (`grade`, `losal`, `hisal`) VALUES ('1', '700', '1200');
INSERT INTO `salgrade` (`grade`, `losal`, `hisal`) VALUES ('2', '1201', '1400');
INSERT INTO `salgrade` (`grade`, `losal`, `hisal`) VALUES ('3', '1401', '2000');
INSERT INTO `salgrade` (`grade`, `losal`, `hisal`) VALUES ('4', '2001', '3000');
INSERT INTO `salgrade` (`grade`, `losal`, `hisal`) VALUES ('5', '3001', '9999');

 


1、选择部门30中的雇员


2、列出所有办事员的姓名、编号和部门

3、找出佣金高于薪金的雇员

4、找出佣金高于薪金60%的雇员


5、找出部门10中所有经理和部门20中的所有办事员的详细资料

6、找出部门10中所有经理、部门20中所有办事员,既不是经理又不是办事员但其薪金>=2000的所有雇员的详细资料


7、找出收取佣金的雇员的不同工作


8、找出不收取佣金或收取的佣金低于100的雇员

9、找出各月最后一天受雇的所有雇员

10、找出早于25年之前受雇的雇员

11、显示只有首字母大写的所有雇员的姓名


​​​​​​​12、显示正好为6个字符的雇员姓名


​​​​​​​13、显示不带有'R'的雇员姓名

​​​​​​​14、显示所有雇员的姓名的前三个字符


​​​​​​​15、显示所有雇员的姓名,用a替换所有'A'


​​​​​​​16、显示所有雇员的姓名以及满10年服务年限的日期

​​​​​​​17、显示雇员的详细资料,按姓名排序

​​​​​​​18、显示雇员姓名,根据其服务年限,将最老的雇员排在最前面


​​​​​​​19、显示所有雇员的姓名、工作和薪金,按工作的降序顺序排序,而工作相同时按薪金升序

​​​​​​​20、显示所有雇员的姓名和加入公司的年份和月份,按雇员受雇日所在月排序,将最早年份的项目排在最前面

​​​​​​​21、显示在一个月为30天的情况下所有雇员的日薪金


​​​​​​​22、找出在(任何年份的)2月受聘的所有雇员


​​​​​​​23、对于每个雇员,显示其加入公司的天数


​​​​​​​24、显示姓名字段的任何位置,包含 "A" 的所有雇员的姓名

​​​​​​​25、以年、月和日显示所有雇员的服务年限

posted @   cdrcsy  阅读(6)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
点击右上角即可分享
微信分享提示