SQL | NULL функции

SQL | NULL функции

В базата данни нулевите стойности служат като контейнери за данни, които или липсват, или не са налични. нулевата стойност е гъвкав тип данни, който може да бъде поставен в колона на всеки тип данни, включително типове данни string int blob и CLOB. Той не е компонент на конкретен тип данни. Нулевите стойности са полезни при почистване на данните преди проучвателен анализ.

Нулевите стойности ни помагат да премахнем двусмислието на данните. Нулевите стойности също са полезни за поддържане на последователен тип данни в колоната. Ще научим за необходимостта и насоките за използване на нулеви стойности в тази статия. Сега нека използваме примери, за да се опитаме да разберем по-добре нулевите стойности и нулевите функции в SQL .

Някои ключови точки относно използването на NULL в SQL:

    Сравнение с NULL: Сравнения с NULL с помощта на редовни оператори за сравнение като '=' ' <>' ' <' '>' не дават true или false, а по-скоро произвеждат резултат от unknown или NULL. Вместо това трябва да използвате операторите IS NULL или IS NOT NULL, за да проверите за NULL стойности.  Обработка на NULL в изрази: При извършване на аритметични или други операции, включващи NULL стойности, резултатът обикновено става NULL. Например всяка аритметична операция, която включва NULL операнд, ще доведе до NULL резултат. Агрегиране на NULL стойности: Повечето агрегатни функции в SQL като SUM СР COUNT и т.н. игнорират NULL стойности при изчисляване на резултатите. Въпреки това има някои агрегатни функции като COUNT(*), които разглеждат NULL стойности.  Индексиране и NULL: Някои системи за бази данни обработват NULL стойностите по различен начин, когато става въпрос за индексиране. 
  1. Важно е да се консултирате със специфичната документация на вашата система за управление на база данни, за да разберете как NULL стойностите се третират в структурите на индекси. Потенциални клопки: Наличието на NULL стойности може да въведе сложност и потенциални клопки при запитване или манипулиране на данни. Изисква внимателно обмисляне на правилното обработване на NULL стойности в SQL заявки, за да се избегнат неочаквани или неправилни резултати.

Защо се нуждаем от NULL стойности?

Нулевите функции са необходими за извършване на операции с нулеви стойности, съхранени в базата данни. с NULL стойности можем да извършваме операции, които ясно идентифицират дали стойността е нула или не. С тази способност за разпознаване на нулеви данни върху тях могат да се извършват операции, подобни на методите за присъединяване на SQL.

Следват функциите NULL, дефинирани в SQL:

ISNULL()

Функцията ISNULL има различни приложения в SQL Server и MySQL. В SQL Server функцията ISNULL() се използва за замяна на NULL стойности. 

Синтаксис:

ИЗБЕРЕТЕ колона(и) ISNULL(име_на_колона стойност_за_замяна)

ОТ име_на_таблица;

Пример : Разгледайте следната таблица на служителите

SQL | NULL функции 

Намерете сумата на заплатата на всички служители, ако заплатата на някой служител не е налична (или NULL стойност), използвайте заплата като 10000.

Запитване:

SELECT SUM(ISNULL(Salary 10000) AS Salary FROM Employee; 

Изход

SQL | NULL функции 

В MySQL функцията ISNULL() се използва за проверка дали даден израз е NULL или не. Ако изразът е NULL, той връща TRUE, иначе FALSE. 

Синтаксис:

ИЗБЕРЕТЕ колона(и)

ОТ име_таблица

WHERE ISNULL(име_на_колона);

Пример : Разгледайте следната таблица на служителите

SQL | NULL функции 

Извлечете имената на всички служители, чиято заплата е налична в таблицата (не NULL).

Запитване:

SELECT Name FROM Employee WHERE ISNULL(Salary); 

Изход: 

SQL | NULL функции 

IFNULL()

Тази функция е налична в MySQL, а не в SQL Server или Oracle. Тази функция приема два аргумента. Ако първият аргумент не е NULL, функцията връща първия аргумент. В противен случай се връща вторият аргумент. Тази функция обикновено се използва за замяна на NULL стойност с друга стойност. 

Синтаксис:

ИЗБЕРЕТЕ колона(и) IFNULL(име_на_колона стойност_за_замяна)

ОТ име_на_таблица;

Пример : Разгледайте следната таблица на служителите

SQL | NULL функции 

 Намерете сумата на заплатата на всички служители, ако заплатата на някой служител не е налична (или NULL стойност), използвайте заплата като 10000.

Запитване;

SELECT SUM(IFNULL(Salary 10000) AS Salary FROM Employee; 

Изход :

SQL | NULL функции 

COALESCE()

Функцията COALESCE в SQL връща първия не-NULL израз сред своите аргументи. Ако всички изрази се изчислят като null, тогава функцията COALESCE ще върне null. 

Синтаксис :

ИЗБЕРЕТЕ колона(и) CAOLESCE(израз_1....израз_n)

ОТ име_на_таблица;

Пример

Разгледайте следната таблица Contact_info 

SQL | NULL функции 

Извлечете името и номера за контакт на всеки служител.

Запитване:

SELECT Name COALESCE(Phone1 Phone2) AS Contact FROM Contact_info; 

Изход

SQL | NULL функции 

NULLIF()

Функцията NULLIF приема два аргумента. Ако двата аргумента са равни, тогава се връща NULL. В противен случай се връща първият аргумент. 

Синтаксис:

ИЗБЕРЕТЕ колона(и) NULLIF(израз1 израз2)

ОТ име_на_таблица;

Пример : Разгледайте следната таблица за продажби SQL | NULL функции

SELECT Store NULLIF(Actual Goal) FROM Sales; 

Изход

 

Заключение

В тази статия научихме какво представляват нулевите стойности и защо трябва да ги използваме. Вече знаем, че използването на NULL стойности е фундаментално за базите данни и се прави, за да се запази тяхната цялост. След това научихме повече за различните функции, които могат да се използват с NULL стойности. В заключение стойността NULL в SQL представлява отсъствие или неизвестна стойност за определено поле с данни. Изисква специално внимание при писане на заявки и изрази за правилно обработване на NULL стойности и избягване на потенциални клопки.

Създаване на тест