EXISTS
истинно, если и только если подзапрос возвращает хотя бы один кортеж.
Так что, пока есть хотя бы один игрок с ростом 165, ваш EXISTS
возвращает истину, для все кортежи внешнего запроса.Если такого игрока не было, то в результате вы получили пустой сет.Таким образом, вы видите, что ваше использование довольно статично и, возможно, не имеет особого смысла в использовании таким образом, если только это не то, что вы намеревались.
Обычно подзапрос к EXISTS
коррелируется, то есть значениевнешний запрос появляется в предложении WHERE
внутреннего запроса, так что результаты EXISTS
могут отличаться от кортежа к кортежу внешнего запроса.
Если вам нужен игрок с высотой 165просто используйте выражение равенства в предложении WHERE
.
SELECT p.height
FROM world_cup.player as p
WHERE p.height = 165;
В таком случае ORDER BY p.height
также бесполезен, поскольку они все одинаковые.