📅  最后修改于: 2023-12-03 15:05:20.654000             🧑  作者: Mango
在SQL中,我们可以使用ORDER BY和LIMIT语句来获取前几名薪水。
以下是获取前3名薪水的SQL代码片段:
SELECT salary FROM employee
ORDER BY salary DESC
LIMIT 3;
这条SQL语句首先选择从employee表中获取salary列,然后使用ORDER BY语句按照降序排序salary列。最后,使用LIMIT语句限制结果集的行数为3。
如果要获取前N名薪水,只需将LIMIT语句中的数字3替换为所需的数字N即可。
需要注意的是,如果有多个员工的薪水相同,并且这些员工都在前N个薪水名单中,则结果集中的行数可能会多于N行。
SELECT name, salary FROM employee
ORDER BY salary DESC
LIMIT 3;
SELECT name, salary, department FROM employee
ORDER BY department ASC, salary DESC
LIMIT 3;
在这个例子中,结果集首先按照部门升序排序,然后在每个部门中按照薪水降序排序,然后使用LIMIT语句限制结果集的行数为3。
SELECT name, salary FROM employee
ORDER BY salary DESC
LIMIT 10 OFFSET 3;
这条SQL语句首先选择从employee表中获取name和salary列,然后使用ORDER BY语句按照降序排序salary列。然后使用LIMIT语句限制结果集的行数为10,并使用OFFSET 3跳过前3行结果。这意味着结果集将显示第4到第13名薪水的员工。