Mám dvě tabulky produkt a výhrady, já chci načíst všechny produkty, které nejsou nejsou zahrnuty do rozsahu dat, jsem pomocí left join dosáhnout výhrady týkající se konkrétního produktu, věc je, že musím filtrovat podle časového období, a vrátit všechny výrobky, které nejsou zahrnuty v rozsahu, existuje několik produktů, a ve většině případů výrobky nejsou ve spojení s žádným rezervace, zabloudil jsem s tímto:
SELECT
p.idProduct, p.name, p.description, p.latitude, p.longitude, p.address,
p.qualification, p.favourite,p.idCategory,p.idCity, p.rules, p.health, p.politics,
r.idReservation
FROM
product p
LEFT JOIN
city c ON c.idCity = p.idCity
LEFT JOIN
reservation r ON r.idProduct = p.idProduct
WHERE
p.idCity = 1
AND ((r.endDate < '2021-11-20' AND r.startDate< '2021-11-28')
OR
(r.endDate > '2021-11-28' AND r.startDate > '2021-11-20'));
V tomto případě například tam nejsou výhrady na těchto datech, ale existuje několik produktů, které nemá vztah s žádnou rezervaci.
Jeden produkt může být ve vztahu k žádné nebo mnoho výhrad.
Jsem se ocenit jakýkoliv náznak o tom.