您可以使用 IN 而不是 ANY 来获取子查询的结果吗?我的意思是这样的:
SELECT nazwisko FROM studenci WHERE rok_urodz > IN (SELECT rok_urodz FROM studenci WHERE miasto = "Warszawa");
您可以使用 IN 而不是 ANY 来获取子查询的结果吗?我的意思是这样的:
SELECT nazwisko FROM studenci WHERE rok_urodz > IN (SELECT rok_urodz FROM studenci WHERE miasto = "Warszawa");
不,这不是正确的语法,比较运算符仅对 ANY、SOME 和 ALL 有效。
如果将 'IN' 替换为 'ALL',这也是可以的语法。要使用“IN”,您不能包含比较运算符。
SELECT nazwisko
FROM studenci
WHERE rok_urodz IN (SELECT rok_urodz FROM studenci WHERE miasto = 'Warszawa');
也是可接受的语法,但给出的结果不同于
SELECT nazwisko
FROM studenci
WHERE rok_urodz > ALL (SELECT rok_urodz FROM studenci WHERE miasto = 'Warszawa');
IN 等价于 = ANY
来源:http ://dev.mysql.com/doc/refman/5.0/en/any-in-some-subqueries.html