原文网址:MySQL--常见业务/笔试题_IT利刃出鞘的博客-CSDN博客
简介
本文介绍MySQL的一些常见业务的语句。其中第一个(查询部门最高工资的员工信息)经常出现在Java后端的笔试题中。
其他几个业务不是特别常见,暂且放在这里,贴出一些写的比较好的博客,后边有时间再补充。
查询部门最高工资的员工信息
描述
表t_employee保存了所有的员工数据。
id | name | salary | department_id |
---|---|---|---|
1 | Joe | 7000 | 1 |
2 | Henry | 8000 | 2 |
3 | Sam | 6000 | 2 |
4 | Max | 9000 | 1 |
表t_department保存了所有的部门数据。
id | name |
---|---|
1 | IT |
2 | Sales |
写一段SQL查找出各部门工资最高的员工信息。如上所示,IT部门工资最高的是Max,Sales部门工资最高的是Henry。
department | employee | salary |
---|---|---|
IT | Max | 90000 |
Sales | Henry | 80000 |
建表语句:
CREATE TABLE `t_employee` (
`id` int NOT NULL AUTO_INCREMENT,
`name` varchar(255) NULL DEFAULT NULL,
`salary` decimal(10, 2) NULL DEFAULT NULL,
`department_id` int NULL DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE = InnoDB;
INSERT INTO `t_employee` VALUES (1, 'Joe', 7000.00, 1);
INSERT INTO `t_employee` VALUES (2, 'Henry', 8000.00, 2);
INSERT INTO `t_employee` VALUES (3, 'Sam', 6000.00, 2);
INSERT INTO `t_employee` VALUES (4, 'Tony', 9000.00, 1);
CREATE TABLE `t_department` (
`id` int NOT NULL AUTO_INCREMENT,
`name` varchar(255) NULL DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE = InnoDB;
INSERT INTO `t_department` VALUES (1, 'IT');
INSERT INTO `t_department` VALUES (2, 'Sales');
方法1
上边只是部分内容,为便于维护,本文已迁移到此地址:MySQL-常见业务/笔试题 - 自学精灵