SELECTFROMSELECT row_number overPARTITION BY company ORDER BY salary AS rk FROMemployeet1 JOINSELECT row_number overPARTITION BY company ORDER BY salary DESCAS rk FROMemployeet2 ON t1id=t2idWHEREABSCA
这段SQL的作用是查询出每个公司中工资差距最小的两个员工。首先,使用两个子查询t1和t2来计算每个公司中员工按工资升序和降序排列的行号。然后,通过将t1和t2的结果进行连接,并使用ABS函数计算行号之间的差值。最后,筛选出行号差值小于等于1的记录,即找出每个公司中工资差距最小的两个员工。
原文地址: http://www.cveoy.top/t/topic/hLkj 著作权归作者所有。请勿转载和采集!