SQL - Operatori Conjunctivi AND e OR

Ciao a tutti, futuri maestri di SQL! Benvenuti alla nostra lezione sugli operatori AND e OR in SQL. Sono entusiasta di guidarvi in questo viaggio e vi prometto, alla fine di questo tutorial, utilizzerete questi operatori come un professionista. Allora, entriamo nel dettaglio!

SQL - AND & OR

L'Operatore AND in SQL

L'operatore AND è come il genitore rigoroso degli operatori logici. Restituisce vero solo quando tutte le condizioni sono soddisfatte. Pensate a esso come a un mangiatore esigente che apprezza un pasto solo se ogni singolo ingrediente è a loro piacimento.

Ecco un esempio semplice:

SELECT * FROM Students
WHERE age > 18 AND grade = 'A';

Questa query sta dicendo: "Mostrami tutti gli studenti che hanno più di 18 anni E hanno una valutazione A." È come chiedere lo studente perfetto!

Ecco un esempio più complesso:

SELECT product_name, price, stock_quantity
FROM Products
WHERE price < 50 AND stock_quantity > 100 AND category = 'Electronics';

Questa query sta cercando elettronica economica che sia ben fornita. È come cercare un buon affare in un negozio!

Operatori AND Multipli

Puoi concatenare più operatori AND, creando un filtro molto specifico. È come costruire un sandwich con molti strati - ogni strato (condizione) deve essere presente affinché la query restituisca risultati.

SELECT * FROM Employees
WHERE department = 'Sales'
AND years_of_experience > 5
AND salary < 75000
AND performance_rating = 'Excellent';

Questa query sta cercando dipendenti esperti e ad alte prestazioni del dipartimento vendite che potrebbero essere destinati ad una promozione. È come un capo che cerca il candidato perfetto per una promozione!

AND con Altri Operatori Logici

AND può essere combinato con altri operatori come OR e NOT per creare condizioni complesse. Ecco un esempio:

SELECT * FROM Cars
WHERE (make = 'Toyota' OR make = 'Honda')
AND year > 2015
AND (color = 'Red' OR color = 'Blue');

Questa query sta cercando automobili recenti di marca Toyota o Honda che siano rosse o blu. È come un acquirente di automobili molto esigente!

AND con la Dichiarazione UPDATE

AND non è solo per le dichiarazioni SELECT. È anche utile nelle dichiarazioni UPDATE quando si desidera modificare record specifici:

UPDATE Products
SET price = price * 1.1
WHERE category = 'Electronics'
AND stock_quantity < 50
AND last_order_date < '2023-01-01';

Questa query aumenta il prezzo degli elettronici che sono a basso magazzino e non sono stati ordinati di recente. È come un responsabile negozio che aggiusta i prezzi in base alla domanda!

L'Operatore OR in SQL

Se AND è il genitore rigoroso, OR è il più indulgente. Restituisce vero se si verifica almeno una delle condizioni. È come un critico gastronomico che è felice se almeno un piatto del pasto è buono.

Ecco un esempio semplice:

SELECT * FROM Customers
WHERE country = 'USA' OR country = 'Canada';

Questa query recupera tutti i clienti degli Stati Uniti o del Canada. Stiamo gettando una rete più ampia rispetto a quella di AND.

Operatori OR Multipli

Come AND, puoi concatenare più condizioni OR:

SELECT * FROM Books
WHERE genre = 'Science Fiction'
OR genre = 'Fantasy'
OR genre = 'Mystery'
OR author = 'Stephen King';

Questa query sta cercando libri che rientrano in diversi generi popolari o sono scritti da un autore specifico. È come sfogliare la sezione "Scelte Popolari" di una libreria!

OR con AND Operatore

Combinare OR e AND può creare query potenti. Ricorda di usare le parentesi per raggruppare correttamente le tue condizioni:

SELECT * FROM Restaurants
WHERE (cuisine = 'Italian' OR cuisine = 'French')
AND price_range <= 3
AND rating >= 4;

Questa query sta cercando ristoranti italiani o francesi ben valutati e accessibili. È perfetto per pianificare una cena piacevole!

OR con la Dichiarazione DELETE

OR può anche essere utilizzato nelle dichiarazioni DELETE per rimuovere record che soddisfano diverse condizioni:

DELETE FROM Inventory
WHERE (expiry_date < CURRENT_DATE)
OR (stock_quantity = 0 AND last_sold_date < DATE_SUB(CURRENT_DATE, INTERVAL 6 MONTH));

Questa query rimuove articoli che sono scaduti o sono rimasti fuori stock per più di sei mesi. È come un responsabile negozio che pulisce il database dell'inventario!

Ecco una tabella che riassume i punti chiave sugli operatori AND e OR:

Operatore Descrizione Caso d'uso Esempio
AND Restituisce vero quando tutte le condizioni sono vere Restringere i risultati WHERE age > 18 AND grade = 'A'
OR Restituisce vero quando almeno una condizione è vera Ampliare i criteri di ricerca WHERE country = 'USA' OR country = 'Canada'

Ricorda, la chiave per padroneggiare questi operatori è la pratica. Prova a scrivere le tue query, esperimenta con diverse combinazioni e presto sarai in grado di creare dichiarazioni SQL complesse con facilità!

Spero che questo tutorial vi abbia illuminato il mondo degli operatori AND e OR. Continuate a codificare, continuate a imparare e, soprattutto, continuare a godervi il vostro viaggio con SQL!

Credits: Image by storyset