Хорошо, поэтому вопрос гласит, что я должен перечислить все рестораны, которые были проверены «Дэниелом Джонстоном» или имеют тип «итальянский» и хотя бы один рейтинг по крайней мере 4.
Iпытался этот запрос:
SELECT name
FROM RESTAURANT
WHERE EXISTS
(SELECT rest_id
FROM RESTAURANT, RATES
WHERE RESTAURANT.rest_id=RATES.rest_id AND RESTAURANT.type = 'Italian' AND RATES.score>=4)
OR rest_id IN
(SELECT rest_id
FROM REVIEWS, USER
WHERE USER.user_id=REVIEWS.user_id AND USER.fname = 'Daniel' AND USER.sname = 'Johnston');
, но он продолжает возвращать ошибки.Я управлял различными частями отдельно, и они в порядке.Поэтому мне интересно, если я не могу использовать EXISTS и OR, и если я не могу, что было бы лучше?
Моя логика заключается в том, что я хочу, чтобы название ресторана было итальянским иимеет по крайней мере одну оценку обзора более 4, поэтому EXISTS подходит для этого, и использование двух EXISTS, похоже, не имеет никакого значения, поэтому я возвращаюсь к обычному вложенному запросу для второй части.Я много перепутал и не могу понять, в чем я не прав, поэтому любая помощь будет принята с благодарностью!