Zoeken…


BESTAAT CLAUSULE

Klantentabel

ID kaart Voornaam Achternaam
1 Ozgur Ozturk
2 youssef Medi
3 Henry Tai

Besteltabel

ID kaart Klanten ID Bedrag
1 2 123.50
2 3 14.80

Ontvang alle klanten met minimaal één bestelling

SELECT * FROM Customer WHERE EXISTS (
    SELECT * FROM Order WHERE Order.CustomerId=Customer.Id
)

Resultaat

ID kaart Voornaam Achternaam
2 youssef Medi
3 Henry Tai

Krijg alle klanten zonder bestelling

SELECT * FROM Customer WHERE NOT EXISTS (
    SELECT * FROM Order WHERE Order.CustomerId = Customer.Id
)

Resultaat

ID kaart Voornaam Achternaam
1 Ozgur Ozturk

Doel

EXISTS , IN en JOIN kunnen soms voor hetzelfde resultaat worden gebruikt, maar ze zijn niet gelijk aan:

  • EXISTS moet worden gebruikt om te controleren of er een waarde in een andere tabel bestaat
  • IN moet worden gebruikt voor de statische lijst
  • JOIN moet worden gebruikt om gegevens op te halen uit andere tabel (len)


Modified text is an extract of the original Stack Overflow Documentation
Licentie onder CC BY-SA 3.0
Niet aangesloten bij Stack Overflow