-1

ANY ではなく IN を使用したサブクエリの結果を取得できますか? 私は次のようなことを意味します:

SELECT nazwisko FROM studenci WHERE rok_urodz > IN (SELECT rok_urodz FROM studenci WHERE miasto = "Warszawa");

4

1 に答える 1

3

いいえ、これは適切な構文ではありません。比較演算子は、ANY、SOME、および ALL でのみ有効です。

'IN' を 'ALL' に置き換えれば、これも OK 構文になります。「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

于 2012-05-08T18:47:39.087 に答える