Kako raditi sa NULL u SQL?
sobes.tech АИ
Одговор од АИ
U SQL-u, NULL označava odsustvo vrednosti i mora se tretirati na poseban način:
-
Upoređivanje sa NULL: Operator
=,<>ne rade saNULLkao sa običnom vrednošću. Na primer,column = NULLuvek vraćaFALSE. -
Provera na NULL: Koristite
IS NULLiliIS NOT NULLza proveru prisustva ili odsustva vrednosti. -
Obrada u agregatnim funkcijama: Funkcije poput
COUNT(column)ne uzimaju u obzirNULL, dokCOUNT(*)broji sve redove. -
Funkcije za zamenu NULL:
COALESCE(column, default_value)vraća prvu ne-NULL vrednost sa liste. -
Spajanje tabela: Kod
JOIN-a, redovi saNULLu ključnim poljima možda neće odgovarati, što utiče na rezultat. Na primer,INNER JOINće isključiti takve redove, dok ćeLEFT JOINzadržati saNULLu poljima spojene tabele.
Primer:
SELECT
user_id,
COALESCE(email, 'no-email@example.com') AS email_address
FROM users
WHERE last_login IS NOT NULL;
Ovde zamenjujemo NULL u polju email sa podrazumevanom adresom i biramo samo korisnike sa poznatim datumom poslednjeg prijavljivanja.