sql中的无效组函数

时间:2017-07-09 11:28:28

标签: mysql sql

select * from details where sal=max(sal);

我用这个但是我收到错误。这个查询中的错误是什么。我知道

  • select Max(sal) from table;
  • select * from details where sal=max(sal);

是正确的查询,但我需要知道查询中的错误。

1 个答案:

答案 0 :(得分:5)

您打算将每行的薪水与该表中的最大值进行比较。然后使用子查询来确定最高薪水:

SELECT *
FROM details
WHERE sal = (SELECT MAX(sal) FROM details)

此查询将返回具有最高工资的所有记录,在平局的情况下可能超过一个。如果您确定只有一个记录具有最高工资,那么以下内容也可以起作用:

SELECT *
FROM details
ORDER BY sal DESC
LIMIT 1