Ik ben een query aan maken om DATA uit een tabel te halen die niet voorkomt in een ander tabel.
Het gaat hier om een tabel met producten en gerelateerde producten.
Het gaat erom dat als ik een gerelateerd product toe wil voegen dat ik de reeds toegevoegd gerelateerd producten niet als keuze wil hebben.
Table products
product_id
name
price
enz
enz
enz
Table related_products
parent_id
product_id
Query:
SELECT p.name
FROM products p
LEFT JOIN related_products r ON p.product_id = r.product_id
WHERE r.product_id IS NULL
Dit werkt goed. Alleen een product kan aan meerdere producten gerelateerd zijn. Een accesoir kan een accesoir zijn bij verschillende producten.
Als je dan een je gerelateerde producten gaat ophalen met deze query geeft hij de producten ook NIET weer die bij aan andere producten gerelateerd zijn. Wat hij dus moet doen is ook nog op de parent_id moet gaan filteren. Maar hoe moet ik dat doen?
Deze query werkt namenlijk niet :
Query:
SELECT p.name
FROM products p
LEFT JOIN related_products r ON p.product_id = r.product_id
WHERE r.product_id IS NULL
AND r.parent_id = "**EEN ID**"
Weten jullie een oplossing
(Tabellen structuur is een uitgeklede versie aangezien hij in het echt een stuk groter is)
Het gaat hier om een tabel met producten en gerelateerde producten.
Het gaat erom dat als ik een gerelateerd product toe wil voegen dat ik de reeds toegevoegd gerelateerd producten niet als keuze wil hebben.
Table products
product_id
name
price
enz
enz
enz
Table related_products
parent_id
product_id
Query:
SELECT p.name
FROM products p
LEFT JOIN related_products r ON p.product_id = r.product_id
WHERE r.product_id IS NULL
Dit werkt goed. Alleen een product kan aan meerdere producten gerelateerd zijn. Een accesoir kan een accesoir zijn bij verschillende producten.
Als je dan een je gerelateerde producten gaat ophalen met deze query geeft hij de producten ook NIET weer die bij aan andere producten gerelateerd zijn. Wat hij dus moet doen is ook nog op de parent_id moet gaan filteren. Maar hoe moet ik dat doen?
Deze query werkt namenlijk niet :
Query:
SELECT p.name
FROM products p
LEFT JOIN related_products r ON p.product_id = r.product_id
WHERE r.product_id IS NULL
AND r.parent_id = "**EEN ID**"
Weten jullie een oplossing
(Tabellen structuur is een uitgeklede versie aangezien hij in het echt een stuk groter is)