我想知道是否有人可以帮助解决这个更复杂的选择查询。我在下面包含了数据的子集和 select 语句的逻辑。我在开始这个时遇到了真正的麻烦:
department position grade salary
sales manager A 40,000
sales manager A 35,000
hr manager A 27,000
hr assistant B 17,000
hr assistant B 17,000
IT manager A 45,000
IT manager C 40,000
IT assistant B 27,000
对于每个独特的 POSITION + GRADE(即经理 + A、经理 + B、经理 + C、助理 + A、助理 + B、助理 + C),我希望每个部门最多返回 1 个条目
如果一个部门有超过 1 个相同 POSITION + GRADE 的条目,则返回工资最低的条目。
我可以确定的唯一条目将是静态的,即 GRADE 将始终为 A、B 或 C。任何其他字段都可能更改。
查询应返回:
department position grade salary
sales manager A 35,000
hr manager A 27,000
hr assistant B 17,000
IT manager A 45,000
IT manager C 40,000
IT assistant B 27,000
我可以根据部门+职位+等级构建某种 DISTINCT 查询并返回最低工资吗?