Меня немного смущает использование ALL. В тесте Nested SELECT из sqlzoo (ссылка здесь :)
Q1: выберите код, отображающий имя, региони население самой маленькой страны в каждом регионе
SELECT region, name, population FROM bbc x WHERE population <= ALL (SELECT
population FROM bbc y WHERE y.region=x.region AND population>0)
Я подумал, что это имеет смысл для меня, потому что мы пытаемся получить население, которое меньше, чем самая маленькая страна в каждом регионе (опрошено с внутреннейсначала подзапрос).
Но затем приходит Q2: выберите код, который показывает страны, относящиеся к регионам со всем населением более 50000
, а затем код для этого:
SELECT name,region,population FROM bbc x WHERE 50000 < ALL (SELECT population
FROM bbc y WHERE x.region=y.region AND y.population>0)
Если мы пытаемся получить страны с населением> 50000, почему знак не>, а <вместо?</p>
Мне кажется, что где-то не хватает базового понимания, но я даже не уверен, где.