我有一个基本的 SQL 问题。为了能够正确地解释它。我将给出它们的架构。
Sailors(sid:integer,sname:string,rating:integer)
(sid 是主键。)
现在,查询是“查找评级大于某个名为 Horatio 的水手的水手”(将有多个 Horatio,因为,sname 不是主键)
答案是 :
SELECT *
FROM Sailors S
WHERE S.rating >ANY (SELECT S2.rating
FROM Sailors S2
WHERE S2.sname="HORATIO")
我想知道,我可以使用 IN 代替 ANY 吗?如果我不这样做,有什么不同?有没有人可以帮助我?提前致谢。