Sissejuhatus
On mitu põhjust, miks võiksite kontrollida, kas veerg on NULL
MySQL-is:
-
Et filtreerige päringutulemusi – Võib-olla soovite välistada read, millel on
NULL
väärtusi teie päringutulemustest. Näiteks võite soovida hankida loendi kõigist kasutajatest, kes on oma e-posti aadressid esitanud, kuid välistada need, kes pole seda teinud. -
Et värskendada või kustutada ridu – Võib-olla soovite värskendada või kustutada ainult neid ridu, millel on
NULL
väärtusi konkreetses veerus. Näiteks võite soovida määrata kohahoidja väärtuse kõigile kasutajatele, kes pole seda esitanud. -
Et käsitleda puuduvaid andmeid - Paljudel juhtudel,
NULL
väärtused võivad viidata ekslikult puuduvatele või tundmatutele andmetele. KontrollitakseNULL
väärtused aitavad teil neid andmeid oma rakenduses õigesti käsitleda. -
Et jõustada andmete terviklikkust – Võib-olla soovite veenduda, et teatud veerud ei ole
NULL
teie andmete terviklikkuse säilitamiseks. Näiteks võite soovida tagada, et kõigil kasutajatel oleksNULL
e-posti aadress.
Üldiselt kontrollin NULL
väärtused võivad olla MySQL-is andmetega töötamise oluline osa.
Selles lühikeses artiklis vaatleme, mida
NULL
MySQL-is on ja kuidas kontrollida, kas veerg onNULL
. Lisaks vaatame üle näitepäringu, mis leiab mõlemadNULL
ja tühjad väljad määratud veerus.
Mis on NULL MySQL-is
MySQL-is NULL
on eriväärtus, mis tähistab väärtuse puudumine. See ei ole sama, mis tühi string või näiteks number 0.
MySQL-i tabeli veergu saab määratleda kui NULL
, mis tähendab, et seda saab salvestada NULL
väärtused. See erineb veerust, mis on määratletud kui NOT NULL
, mis tähendab, et seda ei saa salvestada NULL
väärtused ja neile tuleb anda väärtus uue rea tabelisse lisamisel, et mitte tekitada viga.
Kuidas kontrollida, kas veerg on NULL MySQL-is
Nüüd saame hüpata tegelikule päringule, mis filtreerib kõik välja NULL
väärtused näite veerust. Et kontrollida, kas veerg on NULL
MySQL-is saate kasutada IS NULL
operaator:
SELECT * FROM table_name WHERE column_name IS NULL;
See tagastab kõik read aadressilt table_name
kus on väärtus column_name
is NULL
.
Võite kasutada ka IS NOT NULL
operaator peab kontrollimaNULL
väärtused:
SELECT * FROM table_name WHERE column_name IS NOT NULL;
See tagastab kõik read aadressilt table_name
kus on väärtus column_name
ei ole NULL
.
Märge: Pea meeles, et NULL
on MySQL-i spetsiaalne väärtus, mis tähistab väärtuse puudumist. See ei ole sama, mis tühi string või number 0.
Lisaks saame hoolitseda kõigi eriväärtuste eest, mis võivad tähistada veeru sisestuse puudumist (NULL
, 0
ja tühi string) ühes päringus:
SELECT * FROM table_name WHERE column_name IS NULL OR column_name = '' OR column_name=0;
See filtreerib kõik read alates table_name
kus on väärtus column_name
on üks järgmistest: NULL
, 0
või tühi string.
Järeldus
Kokkuvõttes saab kontrollida, kas veerg on MySQL-is null, kasutades IS NULL
operaator a SELECT
avaldus. Seda operaatorit saab kasutada a WHERE
klausel tulemuskomplekti filtreerimiseks ja ainult nende ridade tagastamiseks, kus on määratud veerg NULL
.
Samuti on võimalik kasutada IS NOT NULL
operaator, et tagastada read, kus veergu pole NULL
. Oluline on seda märkida NULL
väärtused tähistavad puuduvaid või tundmatuid andmeid ja need erinevad nullist või tühjast stringist. Kasutades IS NULL
ja IS NOT NULL
operaatorid, saate tõhusalt hakkama NULL
väärtusi oma MySQL päringutes ja tagama, et teie tulemused on täpsed ja sisukad.