SQL | ISTNIEJE

SQL | ISTNIEJE

Warunek EXISTS w języku SQL służy do sprawdzania, czy wynik skorelowanego zagnieżdżonego zapytania jest pusty (nie zawiera krotek), czy nie. Wynikiem EXISTS jest wartość logiczna True lub False. Można go użyć w instrukcjach SELECT, UPDATE, INSERT lub DELETE. Składnia:

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

Przykłady: Rozważmy następujące dwie relacje Klienci i Zamówienia.

Zapytania

    Użycie warunku EXISTS z instrukcją SELECT Do pobrania imion i nazwisk klientów, którzy złożyli przynajmniej jedno zamówienie.
SELECT fname, lname FROM Customers WHERE EXISTS (SELECT * FROM Orders WHERE Customers.customer_id = Orders.c_id); 
  1. Wyjście:
  2. Użycie NOT z EXISTS Pobierz nazwiska i imiona klientów, którzy nie złożyli żadnego zamówienia.
SELECT lname, fname FROM Customers WHERE NOT EXISTS (SELECT * FROM Orders WHERE Customers.customer_id = Orders.c_id); 
  1. Wyjście:
  2. Użycie warunku EXISTS z instrukcją DELETE Usuń rekord wszystkich klientów z Tabeli Zamówień, których nazwisko to „Mehra”.
DELETE FROM Orders WHERE EXISTS (SELECT * FROM customers WHERE Customers.customer_id = Orders.c_id AND Customers.lname = 'Mehra'); 
SELECT * FROM Orders; 
  1. Wyjście:
  2. Używanie warunku EXISTS z instrukcją UPDATE Zaktualizuj nazwę klienta na „Kumari” w tabeli klientów, której identyfikator_klienta wynosi 401.
UPDATE Customers SET lname = 'Kumari' WHERE EXISTS (SELECT * FROM Customers WHERE customer_id = 401); 
SELECT * FROM Customers; 
  1. Wyjście: