when I use this query
mysql> select movieid from rating where stars < any (select stars from rating where
movieid=103);
the output is as below
movieid
101
108
104
when I execute the below query, the results seems to be the same. Why is that?
> mysql> select movieid,stars from rating where stars <all (select stars
> from rating where movieid=103);
+---------+-------+
| movieid | stars |
+---------+-------+
| 101 | 2 |
| 108 | 2 |
| 104 | 2 |
+---------+-------+
shouldn't the all keyword give back the results which are less than to the stars value 2? which in this case would be an empty set.
here is a capture