logo

МиСКЛ ИФНУЛЛ()

Овај одељак вам помаже да научите више о функцији МиСКЛ ИФНУЛЛ(). Функција ИФНУЛЛ је део МиСКЛ функције тока контроле која се користи за руковање НУЛЛ вредностима.

Функција ИФНУЛЛ прихвата два израза, а ако је први израз није нулто , враћа прве аргументе. Ако је први израз нула , враћа други аргумент. Ова функција враћа или стринг или нумеричку вредност, у зависности од контекста у којем се користи.

Синтакса

Можемо користити функцију ИФНУЛЛ са следећом синтаксом:

 IFNULL (Expression1, Expression2) 

Враћа израз1 када израз1 није нулл. У супротном, вратиће израз2.

Параметерс

Параметар Услов Описи
Израз 1 Потребан Овај израз се користи за проверу да ли је НУЛЛ или не.
Израз 2 Потребан Вратиће се када је израз 1 НУЛЛ.

Подршка за МиСКЛ верзију

Функција ИФНУЛЛ може подржати следеће МиСКЛ верзије:

  • МиСКЛ 8.0
  • МиСКЛ 5.7
  • МиСКЛ 5.6
  • МиСКЛ 5.5
  • МиСКЛ 5.1
  • МиСКЛ 5.0
  • МиСКЛ 4.1
  • МиСКЛ 4.0

Хајде да разумемо функцију МиСКЛ ИФНУЛЛ() са следећим примерима. Можемо користити функцију ИФНУЛЛ са СЕЛЕЦТ изјава директно.

Пример 1

 SELECT IFNULL(0,5); 

У горњој функцији, МиСКЛ наредба проверава први израз. Ако први израз није НУЛЛ, он ће вратити први израз, који је нула.

Излаз:

 0 

Пример 2

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

Горња МиСКЛ изјава проверава први израз. Ако први израз није НУЛЛ, он ће вратити први израз, који је 'Здраво' вредност.

Излаз:

 Hello 

Пример 3

 SELECT IFNULL(NULL,5); 

Следећа МиСКЛ изјава проверава први израз. Ако први израз није НУЛЛ, он ће вратити први израз. У супротном, вратиће други израз, који је пет (5).

Излаз:

 5 

Пример 4

Овде ћемо направити табелу 'студент_цонтацтс' и изврши функцију ИФНУЛЛ().

 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, ); 

Сада морате да убаците податке у табелу. Након уметања вредности у табелу, извршите следећи упит.

 SELECT contactname, cellphone, homephone FROM student_contacts; 

Приказаће излаз који садржи све редове и колоне. Овде можемо видети да неки од контаката имају само број мобилног или кућног телефона.

МиСКЛ ИФНУЛЛ

У горе наведеном излазу, добићемо име свих контаката, име мобилног телефона и кућни број телефона је доступан или не. Дакле, у том случају функција ИФНУЛЛ() игра важну улогу.

Сада покрените следећи МиСКЛ упит. Ова изјава враћа Кућни телефон број ако је мобилни телефон НУЛЛ.

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

Излаз:

Када се горња МиСКЛ изјава успешно покрене, даће следећи излаз.

МиСКЛ ИФНУЛЛ

Напомена: Требало би да избегавате употребу функције ИФНУЛЛ() у клаузули ВХЕРЕ јер ова функција смањује перформансе упита.