![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
SQL
练习
yunhai.du
you can do it!
展开
-
查找排名(窗口函数)
一、问题: 有一个薪水表salaries简况如下:CREATE TABLE `salaries` (`emp_no` int(11) NOT NULL,`salary` int(11) NOT NULL,`from_date` date NOT NULL,`to_date` date NOT NULL,PRIMARY KEY (`emp_no`,`from_date`)); 现要求对所有员工的薪水按照salary进行按照1-N的排名,相同salary并列且按照emp_no升序...原创 2021-05-06 16:58:18 · 526 阅读 · 0 评论 -
查询员工的薪水涨幅情况
问题描述: 查找所有员工自入职以来的薪水涨幅情况,给出员工编号emp_no以及其对应的薪水涨幅growth,并按照growth进行升序排列。(注意:可能有employees表和salaries表里存在记录的员工,有对应的员工编号和涨薪记录,但是已经离职了, 离职的员工salaries表的最新的to_date!=‘9999-01-01’,这样的数据不显示在查找结果里面)。有一个员工表employees简况如下:CREATE TABLE employees ...原创 2021-04-29 14:32:33 · 821 阅读 · 0 评论 -
求第二高薪不用group by
题目如下:有一个员工表employees简况如下:有一个薪水表salaries简况如下:请你查找薪水排名第二多的员工编号emp_no、薪水salary、last_name以及first_name,不能使用order by完成,以上例子输出为:解题过程: 1、这道题属于典型的分组(group by)加排序(order by)+limit 类型,但题目要求不能用order by ,要了老命了,这怎么实现查询第二高薪水?正面不行从侧面入手,把第一高薪水刨去不算,再查找第一..原创 2021-04-28 13:25:28 · 108 阅读 · 0 评论