Oggi vediamo il seguente esercizio di LeetCode a tema SQL:
Write a solution to find all customers who never order anything.
WReturn the result table in any order.
Guardando le tabelle fornite dall’esercizio si può notare che la tabella Customers contiene tutti i clienti, mentre la tabella Orders tiene traccia degli ordini effettuati e collega ogni ordine a un cliente tramite il campo customerId.
Di conseguenza, per trovare i clienti che non hanno mai effettuato ordini, è sufficiente selezionare quelli il cui id non compare tra i customerId presenti nella tabella Orders.
Detto ciò, la soluzione che proponiamo noi è la seguente:
select c.name as Customers
from Customers c
where c.id not in (
select o.customerId
from Orders o
)Se hai dubbi in merito non esitare a contattarci sui nostri social, saremo più che felici di risponderti :)