logo

SQL | FINNES

EXISTS-betingelsen i SQL brukes til å sjekke om resultatet av en korrelert nestet spørring er tom (inneholder ingen tupler) eller ikke. Resultatet av EXISTS er en boolsk verdi True eller False. Den kan brukes i en SELECT-, UPDATE-, INSERT- eller DELETE-setning. Syntaks:

 SELECT column_name(s) FROM table_name WHERE EXISTS  ( SELECT column_name(s) FROM table_name WHERE condition);>

Eksempler: Tenk på følgende to forhold Kunder og Ordrer.

Forespørsler



    Bruke EXISTS-betingelsen med SELECT-setning For å hente for- og etternavnet til kundene som la inn minst én bestilling.
SELECT fname, lname FROM Customers WHERE EXISTS (SELECT * FROM Orders WHERE Customers.customer_id = Orders.c_id);>
  1. Produksjon:
  2. Bruker IKKE med EXISTS Hent etter- og fornavn på kundene som ikke har lagt inn noen bestilling.
SELECT lname, fname FROM Customers WHERE NOT EXISTS (SELECT * FROM Orders WHERE Customers.customer_id = Orders.c_id);>
  1. Produksjon:
  2. Bruk av EXISTS-tilstand med DELETE-setning Slett oppføringen til alle kundene fra bestillingstabellen hvis etternavn er 'Mehra'.
DELETE FROM Orders WHERE EXISTS (SELECT * FROM customers WHERE Customers.customer_id = Orders.c_id AND Customers.lname = 'Mehra');>
SELECT * FROM Orders;>
  1. Produksjon:
  2. Bruk av EXISTS-tilstand med UPDATE-setning Oppdater lnavnet som 'Kumari' til kunden i kundetabellen hvis kunde_id er 401.
UPDATE Customers SET lname = 'Kumari' WHERE EXISTS (SELECT * FROM Customers WHERE customer_id = 401);>
SELECT * FROM Customers;>
  1. Produksjon: