logo

MySQL IFNULL()

Цей розділ допоможе вам дізнатися про функцію MySQL IFNULL(). Функція IFNULL є частиною функції потоку керування MySQL, яка використовується для обробки значень NULL.

Функція IFNULL приймає два вирази, і якщо перший вираз є не нульовий , він повертає перші аргументи. Якщо перший вираз нуль , він повертає другий аргумент. Ця функція повертає рядкове або числове значення, залежно від контексту, де вона використовується.

Синтаксис

Ми можемо використовувати функцію IFNULL із таким синтаксисом:

 IFNULL (Expression1, Expression2) 

Він повертає вираз1, якщо вираз1 не є нульовим. В іншому випадку він поверне вираз2.

Параметри

Параметр Вимога Описи
Вираз 1 вимагається Цей вираз використовується, щоб перевірити, чи є він NULL чи ні.
Вираз 2 вимагається Він повернеться, коли вираз 1 буде NULL.

Підтримка версії MySQL

Функція IFNULL підтримує такі версії MySQL:

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

Розберемо функцію MySQL IFNULL() на наступних прикладах. Ми можемо використовувати функцію IFNULL з ВИБРАТИ заява безпосередньо.

Приклад 1

 SELECT IFNULL(0,5); 

У наведеній вище функції оператор MySQL перевіряє перший вираз. Якщо перший вираз не NULL, він поверне перший вираз, який дорівнює нулю.

Вихід:

 0 

Приклад 2

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

Наведений вище оператор MySQL перевіряє перший вираз. Якщо перший вираз не NULL, він поверне перший вираз, який є 'Привіт' значення.

Вихід:

 Hello 

Приклад 3

 SELECT IFNULL(NULL,5); 

Наступний оператор MySQL перевіряє перший вираз. Якщо перший вираз не NULL, він поверне перший вираз. В іншому випадку він поверне другий вираз, який дорівнює п’яти (5).

Вихід:

 5 

Приклад 4

Тут ми створимо таблицю 'student_contacts' і виконати функцію IFNULL().

 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; 

Він відобразить результат, який містить усі рядки та стовпці. Тут ми бачимо, що деякі з контактів мають лише номер мобільного або домашнього телефону.

MySQL IFNULL

У наведеному вище виводі ми отримаємо всі контакти з іменами мобільного телефону погоди, а номер домашнього телефону доступний чи ні. Отже, у цьому випадку функція IFNULL() відіграє важливу роль.

Тепер виконайте наступний запит MySQL. Цей оператор повертає домашній телефон номер, якщо стільниковий телефон NULL.

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

Вихід:

Коли наведений вище оператор MySQL успішно виконується, він видасть наступний результат.

MySQL IFNULL

Примітка. Слід уникати використання функції IFNULL() у реченні WHERE, оскільки ця функція знижує продуктивність запиту.