Сравнение с NULL в MySQL
Доста често начинаещите администратори на MySQL се сблъскват с проблема с обработката на NULL стойността поради неразбирането им на тази стойност. В тази статия ще се опитаме да разберем какъв вид звяр е тази NULL стойност.
NULL стойност - Специална специална стойност (псевдо стойност) съответства на концепцията за "празно поле" (не съдържа стойности, не е нула, не е празен низ), използвана за запис в поле на таблица на база данни на MySQL.
Основният рейк е погребан само при сравняване на NULL стойността с други стойности по стандартни начини, но нека да го вземем една по една.
Характеристики на стойността NULL в MySQL.
Нека се опитаме да разберем следните примери. Нека сравним NULL с булевата стойност FALSE, с празния низ, с нула, със себе си (т.е. със стойността на NULL) и анализираме резултатите.
Заключение: NULL не е равно на булевата стойност FALSE.
Заключение: NULL не е равно на цяло число нула.
Заключение: NULL не е равно на празния низ
Заключение: NULL не е равно на NULL
Вижда се, че резултатът за всички заявки е един и същ - стойността е NULL. На пръв поглед това изглежда доста странно, но знаем, че по дефиниция стойността NULL представлява просто липсата на каквато и да е стойност и не принадлежи към никакъв тип данни.
Обработка на NULL стойност в MySQL заявка.
Как да се справя с нулева стойност? MySQL базите данни имат специални оператори IS NULL и IS NOT NULL за правилно сравняване на стойности с NULL.
Тази заявка ще върне редове, съдържащи NULL стойност.
И тази заявка ще покаже всички редове, с изключение на редовете, съдържащи NULL стойност.
Не забравяйте, че когато сравнявате която и да е стойност с NULL, резултатът винаги ще бъде NULL.
Следните са невалидни заявки, които няма да се покажатнито един ред.
Това е всичко. Правете валидни извличания от MySQL бази данни, съдържащи NULL.