我有一张名为工人的桌子,其中包括一些人的姓名,工资和工作站。该表格如下所示:
|Name|Station|Salary|
|Kyle|1 |2200 |
|Lisa|2 |2250 |
|Mark|3 |1800 |
|Hans|4 |1350 |
这可能听起来像一个非常明显的初学者问题,但我无法让它发挥作用。我想选择工资最高的人的名字。谢谢你的阅读,并有一个很好的。
答案 0 :(得分:5)
Select name
from table
where salary = (select max(salary) from table)
我不知道你是否想要包括关系(如果两个人有相同的工资,那就是最高工资。
这样做是找到最高工资,然后在查询中使用它来查找具有该工资的所有人。您需要将表格替换为表格名称。
答案 1 :(得分:3)
试试这个
SELECT top 1 Name
FROM tableName
ORDER BY Salary DESC
答案 2 :(得分:0)
你没有提到DBMS:
select name
from table
order by salary desc
fetch first 1 rows only
如果您的DBMS支持OLAP功能:
select name from (
select name, row_number() over (order by salary desc) as rn
from table
) where rn = 1
答案 3 :(得分:0)
尝试:
SELECT TOP name
FROM yourtable
WHERE salary = (SELECT MAX(salary) FROM yourtable)
答案 4 :(得分:0)
您必须使用子查询来获取姓名和最高薪水:
select Name, Salary from tb_name where salary=(select max(salary) from tb_name);