Запрос sql по трём таблицам

Вывести ФИО владельцев, ни одна лошадь которых не участвовала в заезде №1.

Что здесь не правильно ?

    "SELECT * FROM horseowner JOIN horsedata ON horseowner.idowner = 
horsedata.numberownerhorse JOIN racing ON horsedata.idhorse = 
racing.namberracinghorse WHERE racing.idracing NOT IN(1)"

есть 3 таблицы "horseowner", "horsedata", "racing"

введите сюда описание изображения

введите сюда описание изображения

введите сюда описание изображения


Ответы (1 шт):

Автор решения: Aziz Umarov

Попробуйте так,

SELECT distinct horseowner.fioowner
 FROM horseowner 
  LEFT JOIN horsedata 
   ON horseowner.idowner = horsedata.numberownerhorse 
  LEFT JOIN racing 
   ON horsedata.idhorse = racing.namberracinghorse
WHERE racing.idracing IS NULL

Конечно тут выведет и тех у которых нет лошади и вовсе, но чтоб у хозяина была лошадь нужно первый жоин был иннер

→ Ссылка