значення null
Значення NULL вказує на те, що значення невідомо. Воно відрізняється від порожнього або нульового значення. Два значення NULL вважаються еквівалентними. Порівняння між двома значеннями NULL або між значенням NULL і будь-яким іншим значенням повертають невідому величину, так як значення кожного із значень NULL невідомо.
Значення NULL зазвичай вказує на те, що дані невідомі, непридатні або що дані будуть додані пізніше. Наприклад, на момент розміщення клієнтом замовлення може бути невідомо його батькові.
До значенням NULL належать такі угоди:
для перевірки наявності значення NULL в реченні WHERE запиту використовуються ключові слова IS NULL або IS NOT NULL;
значення NULL можуть з'явитися в стовпці явним зазначенням значення NULL в інструкції INSERT або UPDATE, пропуском вказівки стовпця в інструкції INSERT, або при додаванні нового стовпця в існуючу таблицю інструкцією ALTER TABLE;
значення NULL не можуть застосовуватися в тих випадках, коли необхідно відрізняти один рядок таблиці від іншої, наприклад в якості первинного або зовнішнього ключа.
Якщо існує ймовірність присутності в даних значень NULL і це небажано, необхідно створювати запити і інструкції зміни даних так, щоб вони або видаляли значення NULL, або перетворювали їх в якісь інші значення.
Щоб спростити супровід і знизити ймовірність виникнення небажаних наслідків для існуючих запитів або звітів, необхідно звести використання значень NULL до мінімуму. Плануйте запити та інструкції зміни даних таким чином, щоб значення NULL використовувалися в мінімальному обсязі.
Якщо в даних присутні значення NULL, логічні оператори і оператори порівняння можуть повертати, крім TRUE або FALSE, також і третій результат - UNKNOWN. Необхідність використання тризначної логіки є причиною багатьох помилок в додатках. Наведені нижче таблиці показують, як значення NULL впливають на операції порівняння.
У цій табличці вказано результати застосування оператора AND до двох логічним операндам.