wonderful-sql-task06
机缘
当前:
- 日常学习过程中的记录
期望:
- 分享解决问题的经验
- 通过文章进行技术交流
题目
练习一: 各部门工资最高的员工(难度:中等)
创建Employee 表,包含所有员工信息,每个员工有其对应的 Id, salary 和 department Id。
创建Department 表,包含公司所有部门的信息。
要求:编写一个 SQL 查询,找出每个部门工资最高的员工。例如,根据上述给定的表格,Max 在 IT 部门有最高工资,Henry 在 Sales 部门有最高工资。
解答:先创建表,再插入,根据条件查询即可
CREATE TABLE `employee` (
`Id` int(11) NOT NULL,
`Name` varchar(50) DEFAULT NULL,
`Salary` decimal(10,2) DEFAULT NULL,
`DepartmentId` int(11) DEFAULT NULL,
PRIMARY KEY (`Id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
CREATE TABLE `department` (
`Id` int(11) NOT NULL,
`Name` varchar(50) DEFAULT NULL,
PRIMARY KEY (`Id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
查询语句及结果: