logo

MySQL IFNULL()

Denne delen hjelper deg å lære om MySQL IFNULL()-funksjonen. IFNULL-funksjonen er en del av MySQL-kontrollflytfunksjonen som brukes til å håndtere NULL-verdier.

IFNULL-funksjonen godtar to uttrykk, og hvis det første uttrykket er ikke null , returnerer den de første argumentene. Hvis det første uttrykket er null , returnerer det det andre argumentet. Denne funksjonen returnerer enten streng eller numerisk verdi, avhengig av konteksten der den brukes.

Syntaks

Vi kan bruke IFNULL-funksjonen med følgende syntaks:

 IFNULL (Expression1, Expression2) 

Den returnerer uttrykk1 når uttrykk1 ikke er null. Ellers vil det returnere expression2.

Parametere

Parameter Krav Beskrivelser
Uttrykk 1 Obligatorisk Dette uttrykket brukes til å sjekke om det er NULL eller ikke.
Uttrykk 2 Obligatorisk Den kommer tilbake når uttrykket 1 er NULL.

Støtte for MySQL-versjon

IFNULL-funksjonen kan støtte følgende MySQL-versjoner:

  • MySQL 8.0
  • MySQL 5.7
  • MySQL 5.6
  • MySQL 5.5
  • MySQL 5.1
  • MySQL 5.0
  • MySQL 4.1
  • MySQL 4.0

La oss forstå MySQL IFNULL()-funksjonen med følgende eksempler. Vi kan bruke IFNULL-funksjonen med PLUKKE UT uttalelse direkte.

Eksempel 1

 SELECT IFNULL(0,5); 

I funksjonen ovenfor sjekker MySQL-setningen det første uttrykket. Hvis det første uttrykket ikke er NULL, vil det returnere det første uttrykket, som er null.

Produksjon:

 0 

Eksempel 2

 SELECT IFNULL('Hello', 'javaTpoint'); 

MySQL-setningen ovenfor kontrollerer det første uttrykket. Hvis det første uttrykket ikke er NULL, vil det returnere det første uttrykket, som er 'Hallo' verdi.

Produksjon:

 Hello 

Eksempel 3

 SELECT IFNULL(NULL,5); 

Følgende MySQL-setning kontrollerer det første uttrykket. Hvis det første uttrykket ikke er NULL, vil det returnere det første uttrykket. Ellers vil det returnere det andre uttrykket, som er fem (5).

Produksjon:

 5 

Eksempel 4

Her skal vi lage en tabell 'student_kontakter' og utfør IFNULL()-funksjonen.

 CREATE TABLE `student_contacts` ( `studentid` int unsigned NOT NULL AUTO_INCREMENT, `contactname` varchar(45) NOT NULL, `cellphone` varchar(20) DEFAULT NULL, `homephone` varchar(20) DEFAULT NULL, ); 

Nå må du sette inn data i en tabell. Etter å ha satt inn verdiene i tabellen, utfør følgende spørring.

 SELECT contactname, cellphone, homephone FROM student_contacts; 

Den vil vise utdataene som inneholder alle rader og kolonner. Her kan vi se at noen av kontaktene kun har en mobiltelefon eller hjemmetelefonnummer.

MySQL IFNULL

I utgangen ovenfor, vil vi få alle kontakter navn vær mobiltelefon, og hjemmetelefonnummer er tilgjengelig eller ikke. Så i så fall spiller IFNULL()-funksjonen en viktig rolle.

Kjør nå følgende MySQL-spørring. Denne uttalelsen returnerer hjemmetelefon nummer hvis mobiltelefonen er NULL.

 SELECT contactname, IFNULL(cellphone, homephone) phone FROM student_contact; 

Produksjon:

Når MySQL-setningen ovenfor kjører vellykket, vil den gi følgende utgang.

MySQL IFNULL

Merk: Du bør unngå bruk av funksjonen IFNULL() i WHERE-leddet fordi denne funksjonen reduserer ytelsen til spørringen.