このクエリを使用すると
mysql> select movieid from rating where stars < any (select stars from rating where
movieid=103);
出力は以下のとおりです
movieid
101
108
104
以下のクエリを実行すると、結果は同じようです。何故ですか?
> mysql> select movieid,stars from rating where stars <all (select stars
> from rating where movieid=103);
+---------+-------+
| movieid | stars |
+---------+-------+
| 101 | 2 |
| 108 | 2 |
| 104 | 2 |
+---------+-------+
all キーワードは、星の値 2未満の結果を返すべきではありませんか? この場合、これは空のセットになります。
ここにキャプチャがあります