在我做题的过程中碰到了这样一道题目——查询各个部门中最高工资中最低的那个部门的 最低工资是多少。这题的意思是要查询出每个部门的最高工资里面那个最低工资的部门的最低工资是多少。
我的想法就是先通过部门分组查询出各个部门的最高工资,在给它套一层查询,过滤出工资最低的那个部门的部门工资。下面我们分步骤解释。
首先对部门分组查询出最高工资:
然后查询出最高工资中最低的工资:
然后套一层查询加上Where语句过滤进行查询得出结果:
我认为上面这种解题的方法很老套,在和同学讨论的时候我发现还有一种更好的解题方式:
我发现只要是查询最低或最高之类的都可以使用排序进行查询,这样查询会更加的方便也更好理解。
一样的首先对部门分组查询出部门的最高工资以及部门ID并对工资进行生序排序:
然后直接使用rownum伪列进行过滤查询第一个就得到最低工资的那个部门ID了:
解题的思路与方法
最新推荐文章于 2021-04-23 21:04:40 发布