Задать вопрос
@UNy

Предикат EXISTS?

Не могу понять как работает exists. Вот пример:
SELECT ship FROM Outcomes os
WHERE EXISTS (SELECT ship 
 FROM Outcomes oa
 WHERE oa.ship = os.ship AND 
 result = 'damaged'
 )

По идее должны выбираться все ship из outcomes если exists вернет true, почему тогда выводятся только те ship где result='damaged'?
  • Вопрос задан
  • 559 просмотров
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Skillbox
    Java-разработчик
    8 месяцев
    Далее
  • Shultais Education
    Основы SQL
    3 месяца
    Далее
  • OTUS
    PHP Developer. Professional
    5 месяцев
    Далее
Решения вопроса 2
Sanasol
@Sanasol
нельзя просто так взять и загуглить ошибку
Ну так вы же выбираете в exists по условию result = damaged что вы хотите чтобы он выводил?

А в целом смысл вообще непонятен, в ту же таблицу зачем делать такую выборку.
Тоже самое что и такой запрос получается
SELECT ship FROM Outcomes os
WHERE  result = 'damaged'
Ответ написан
VladimirAndreev
@VladimirAndreev
php web dev
Select * from a inner join b on a.f=b.f where b.ff='aaa'

Exist работает так.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы