Come lavorare con NULL in SQL?
sobes.tech AI
Risposta dell'AI
In SQL, NULL indica l'assenza di un valore e deve essere trattato in modo speciale:
-
Confronti con NULL: Gli operatori
=,<>non funzionano conNULLcome con un valore normale. Ad esempio,column = NULLrestituisce sempreFALSE. -
Verifica di NULL: Usa
IS NULLoIS NOT NULLper verificare la presenza o assenza di un valore. -
Gestione negli aggregati: Funzioni come
COUNT(column)non consideranoNULL, mentreCOUNT(*)conta tutte le righe. -
Funzioni per sostituire NULL:
COALESCE(column, default_value)restituisce il primo valore non-NULL dalla lista. -
Unione di tabelle: In
JOIN, le righe conNULLnei campi chiave potrebbero non corrispondere, influenzando il risultato. Ad esempio,INNER JOINescluderà tali righe, mentreLEFT JOINle manterrà conNULLnei campi della tabella unita.
Esempio:
SELECT
user_id,
COALESCE(email, 'no-email@example.com') AS email_address
FROM users
WHERE last_login IS NOT NULL;
Qui sostituiamo NULL nel campo email con un indirizzo predefinito e selezioniamo solo gli utenti con una data di ultimo accesso nota.