CREATE TABLE emp (
	id INT PRIMARY KEY AUTO_INCREMENT,
	name VARCHAR(20),
	age INT,
	enterdate DATE,
	dept_id INT,
	manager_id INT,
	job VARCHAR(20),
	salary INT
) comment '员工表';

INSERT INTO emp values (1, '赵', 90, '2020-01-01', 1, 8, '保安', 1000);
INSERT INTO emp values (2, '钱', 60, '2020-01-01', 1, 8, '保安', 6000);
INSERT INTO emp values (3, '孙', 33, '2021-01-01', 2, 8, '前端', 11000);
INSERT INTO emp values (4, '李', 19, '2000-01-01', 2, 8, '后端', 23000);
INSERT INTO emp values (5, '周', 44, '2023-01-01', 3, 8, '财务', 26000);
INSERT INTO emp values (6, '吴', 80, '2020-01-01', 3, 8, '财务', 16000);
INSERT INTO emp values (7, '郑', 18, '2010-01-01', 4, 8, '销售', 7000);
INSERT INTO emp values (8, '王', 55, '2020-01-01', 4, 8, '销售', 10000);
INSERT INTO emp values (9, '王1', 55, '2020-01-01', 4, 8, '销售', 30000);
INSERT INTO emp values (10, '王2', 55, '2020-01-01', 4, 8, '销售', 40000);

CREATE TABLE dept (
	id int,
	name VARCHAR(20)
);

INSERT INTO dept values (1, '安保部');
INSERT INTO dept values (2, '研发部');
INSERT INTO dept values (3, '财务部');
INSERT INTO dept values (4, '销售部');
INSERT INTO dept values (5, '总经部');

create table salgrade (
  grade int,
	losal int,
	hisal int
) comment '薪资等级表';

insert into salgrade values (1,0,3000);
insert into salgrade values (2,3001,5000);
insert into salgrade values (3,5001,8000);
insert into salgrade values (4,8001,10000);
insert into salgrade values (5,10001,15000);
insert into salgrade values (6,15001,20000);
insert into salgrade values (7,20001,25000);
insert into salgrade values (8,25001,30000);
  1. 查询员工的姓名、年龄、职位、部门信息
  2. 查询年龄小于30岁的员工姓名、年龄、职位、部门信息。
  3. 查询拥有员工的部门ID、部门名称。
  4. 查询所有年龄大于40岁的员工,及其归属的部门名称:如果员工没有分配部门,也需要展示出来。
  5. 查询所有员工的工资等级。
  6. 查询"研发部"所有员工的信息及工资等级。
  7. 查询"研发部”员工的平均工资。
  8. 查询工资比"孙”高的员工信息。
  9. 查询比平均薪资高的员工信息。
  10. 查询低于本部门平均工资的员工信息。
  11. 查询所有的部门信息,井统计部门的员工人数。
  12. 查询每个部门中工资最高的员工信息
  13. 查询部门人数超过2个人的部门名称
@Options(useGeneratedKeys = true, keyProperty = "id")