știind când să folosească funcția SQL COALESCE este un salvator atunci când ai de-a face cu NULL.după cum știți, NULL este un concept complicat, și se pare că ceea ce vreodată NULL „atinge” într-o expresie, face rezultatul NULL. Deci, când ai de-a face cu NULL, cum poți ieși din ciclu? Adică, cum puteți afișa o altă valoare în schimb?acest lucru este în cazul în care coalesce SQL intră în joc. Cu această funcție puteți testa pentru NULL, și atunci când este prezent, substitut NULL pentru o altă valoare.
ce este COALESCE?,COALESCE este o funcție SQLServer încorporată. Utilizați COALESCE atunci când trebuie să înlocuiți un nul cu o altă valoare. Acesta ia forma:
COALESCE(value1, value2, ..., valuen)
returnează primul non nul din lista de valori.
luați în considerare parcurile de baseball din Baza de date de Baseball Lahmans., Dacă vrem să afișeze parkname în loc de parkalias, care poate fi null, COAGULEZE funcționează bine aici:
În acest exemplu se COAGULEZE(parkalias, parkname) întoarce valoarea găsit în parkalias dacă valoarea nu este NUL; cu toate acestea, dacă este NULL, atunci parkname este returnat.
Ce SQL ați scrie dacă doriți să afișați „Necunoscut” dacă parkalias este nul?, De ce nu încercați să scrie interogarea… aici este un început…
Compararea SQL COALESCE la caz
știați că SQL COALESCE este o comandă rapidă pentru declarația de caz?
luați în considerare sondajul tabelului, care are coloanele answerID, option1, option2, option3.
vrem să enumerăm opțiunea answerID și first non NULL.
Din ceea ce am învățat putem folosi ÎNCHEGAT ca:
SELECT answerID,
COALESCE(option1, option2, option3, 'No Option Selected')
FROM survey
Aceasta este o scurtătură pentru acest CAZ declarație:
SELECT answerID,
CASE
WHEN option1 is not NULL then option1
WHEN option2 is not NULL then option2
WHEN option3 is not NULL then option3
ELSE 'No Option Selected'
END
FROM survey
CAZ este folosit în mai multe situații, dar atunci când înlocuirea NULL, COAGULEZE este o comandă rapidă la îndemână!,pentru înregistrare, SQL Server are multe funcții mai interesante de învățat și explorat. Dacă nu ați făcut acest lucru deja, verificați aceste funcții de șir pentru a manipula datele text!