🧚 Ascolta! Beekeeper Studio è una GUI per database veloce, moderna e open source Scarica
24 luglio 2025 Di Matthew Rathbone

Gestire in modo efficace i valori NULL è una sfida comune in SQL. MySQL offre diverse funzioni per lavorare con i NULL, tra cui la funzione COALESCE. In questo articolo vedremo come usare COALESCE in MySQL e scopriremo le sue applicazioni pratiche.

La funzione COALESCE fa parte del ricco set di funzioni di MySQL per la gestione dei valori NULL e la manipolazione dei dati.

Cos'è COALESCE?

La funzione COALESCE restituisce il primo valore non NULL di una lista. È utile quando vuoi essere sicuro di lavorare con dati reali e non con valori sconosciuti.

Sintassi

COALESCE(val1, val2, ..., valN)
  • val1, val2, …, valN sono i valori da valutare.
  • Il tipo restituito sarà lo stesso del primo valore non NULL della lista.

Uso base di COALESCE

Partiamo da un esempio semplice per vedere come funziona COALESCE:

SELECT COALESCE(NULL, NULL, 'Apples', 'Bananas') AS Result;

Output previsto

+--------+
| Result |
+--------+
| Apples |
+--------+

In questo esempio, COALESCE restituisce ‘Apples’ perché è il primo valore non NULL.

Gestire i NULL nei dati delle tabelle

Immagina di avere una tabella employees con colonne di contatto facoltative:

CREATE TABLE employees (
    id INT AUTO_INCREMENT PRIMARY KEY,
    name VARCHAR(100),
    email VARCHAR(100),
    phone VARCHAR(15)
);

INSERT INTO employees (name, email, phone) VALUES
('John Doe', 'john@example.com', NULL),
('Jane Smith', NULL, '123-456-7890'),
('Alice Johnson', NULL, NULL);

Query con COALESCE

Vuoi recuperare il metodo di contatto preferito di ogni dipendente. Ecco come COALESCE può aiutarti:

SELECT 
    name, 
    COALESCE(email, phone, 'No Contact Available') AS contact_method
FROM 
    employees;

Output previsto

+---------------+--------------------+
| name          | contact_method     |
+---------------+--------------------+
| John Doe      | john@example.com   |
| Jane Smith    | 123-456-7890       |
| Alice Johnson | No Contact Available |
+---------------+--------------------+

In questo caso, la query controlla prima email, poi phone, e restituisce ‘No Contact Available’ se entrambi sono NULL.

Combinarla con altre funzioni SQL

COALESCE può essere combinata con altre funzioni per trasformare i dati in modo più solido. Considera il seguente esempio, che usa IFNULL insieme a COALESCE:

SELECT 
    id,
    name,
    COALESCE(email, phone, 'No Contact') AS contact,
    IFNULL(phone, 'N/A') AS phone_number
FROM 
    employees;

Output previsto

+----+---------------+--------------------+-------------+
| id | name          | contact            | phone_number|
+----+---------------+--------------------+-------------+
| 1  | John Doe      | john@example.com   | N/A         |
| 2  | Jane Smith    | 123-456-7890       | 123-456-7890|
| 3  | Alice Johnson | No Contact         | N/A         |
+----+---------------+--------------------+-------------+

Qui COALESCE determina il miglior metodo di contatto, mentre IFNULL fornisce un valore predefinito specifico per la colonna phone_number.

Conclusione

Usare COALESCE in MySQL è un modo efficace per gestire i valori NULL e garantire che le tue query producano risultati significativi anche quando mancano alcuni dati. Offre flessibilità nel selezionare il primo valore non NULL tra più colonne, aiutandoti a mantenere l'integrità e l'usabilità dei dati.

Per argomenti MySQL più avanzati, dai un'occhiata alle nostre guide su MySQL Full Outer Join e tecniche di sottrazione in MySQL. Impara a sfruttare le funzioni SQL per creare applicazioni solide e analisi dei dati approfondite.

Se lavori con query MySQL complesse, Beekeeper Studio offre un'interfaccia intuitiva per testare e fare il debug delle tue espressioni COALESCE con risultati in tempo reale.

Beekeeper Studio è una GUI per database gratuita & open source

Il miglior strumento per query & editor SQL che abbia mai usato. Offre tutto ciò che mi serve per gestire il mio database. - ⭐⭐⭐⭐⭐ Mit

Beekeeper Studio è veloce, intuitivo e facile da usare. Beekeeper supporta tantissimi database e funziona alla grande su Windows, Mac e Linux.

La versione Linux di Beekeeper è completa al 100%, senza tagli e senza compromessi sulle funzionalità.

Cosa dicono gli utenti di Beekeeper Studio

★★★★★
"Beekeeper Studio ha sostituito completamente il mio vecchio workflow SQL. È veloce, intuitivo e rende di nuovo piacevole lavorare con i database."
— Alex K., Database Developer
★★★★★
"Ho provato molte GUI per database, ma Beekeeper trova l'equilibrio perfetto tra funzionalità e semplicità. Funziona e basta."
— Sarah M., Full Stack Engineer

Pronto a migliorare il tuo workflow SQL?

download Scarica gratis