query om geselecteerde records te vinden

Status
Niet open voor verdere reacties.

maurann

Gebruiker
Lid geworden
22 jul 2007
Berichten
117
Beste 'Helpmij access'- forumleden,

Heb een tabel product met een veld productId,
en een tabel orderdetail, eveneens met het veld productId.
Deze tabellen kon ik vroeger koppelen en een referentiële integriteit bezorgen op het veld productId.
In de tabel oderdetail moet volgens mij een product zitten dat niet in de tabel
product meer te vinden is. Vandaar dat de ref. int. nu niet meer afdwingbaar is.
Nu komt de vraag:
graag had ik in SQL de syntaxis om de bewuste record(s) eruit te filteren.
Dus een query die beide tabellen doorzoekt en de records met het productId eruit filtert die in de primaire tabel geen overeenkomstig record hebben.
Kan iemand me helpen, aub?

M.
 
Outer join

Maak een query waarbij je beide tabellen aan elkaar koppelt op productid. Zet de eigenschap van de join op alle records uit orders en alleen de records uit product die overeenkomen oid. Zet nu de beide velden productid uit beide tabellen erin en stel op de productid uit de producten-tabel als criterium in not null. Nu krijg je alleen nog orders met een productid die niet meer in de producten voorkomt.
 
Txs Sesam,

vond door uw tussenkomst volgende werkende query

SELECT Orderdetail.ProductId, Product.ProductId
FROM Orderdetail LEFT JOIN Product ON Orderdetail.ProductId = Product.ProductId
WHERE (((Product.ProductId) Is Null));
:)

Weer vooruit geholpen door Sesam & Helpmij
:thumb:
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan