Cum să lucrezi cu NULL în SQL?
sobes.tech AI
Răspuns de la AI
În SQL, NULL înseamnă absența unei valori și trebuie tratat într-un mod special:
-
Compararea cu NULL: Operatorii
=,<>nu funcționează cuNULLca și cu o valoare obișnuită. De exemplu,column = NULLreturnează întotdeaunaFALSE. -
Verificarea pentru NULL: Folosiți
IS NULLsauIS NOT NULLpentru a verifica prezența sau absența unei valori. -
Prelucrarea în agregate: Funcții precum
COUNT(column)nu iau în considerareNULL, în timp ceCOUNT(*)numără toate rândurile. -
Funcții pentru înlocuirea NULL:
COALESCE(column, default_value)returnează primul valoare non-NULL din listă. -
Îmbinarea tabelelor: La
JOIN, rândurile cuNULLîn câmpurile cheie pot să nu se potrivească, ceea ce influențează rezultatul. De exemplu,INNER JOINva exclude astfel de rânduri, în timp ceLEFT JOINle va păstra cuNULLîn câmpurile tabelei unite.
Exemplu:
SELECT
user_id,
COALESCE(email, 'no-email@example.com') AS email_address
FROM users
WHERE last_login IS NOT NULL;
Aici, înlocuim NULL în câmpul email cu o adresă implicită și selectăm doar utilizatorii cu o dată de ultimă autentificare cunoscută.