0

尝试运行此查询时出现语义错误,但看不到任何错误。

查找工资最低的员工的 ssn

select ssn from employee

where salary < ALL

( select salary from employee);
4

1 回答 1

1

您试图找到低于所有其他薪水的薪水。那是行不通的,因为最低工资本身就在表中。当我们达到最低工资时,它会与表中的所有其他工资进行比较。但是<当我们将最低工资与自身进行比较时,比较将失败。

您需要更改<<=.

SELECT ssn FROM employee
WHERE salary <= ALL (SELECT salary FROM employee);

这将返回所有具有最低工资的员工的 ssn。等效地,

SELECT ssn FROM employee
WHERE salary = (SELECT MIN(salary) FROM employee);
于 2013-10-10T18:56:15.147 回答