SQL NULL
Что такое значение NULL?
Поле с значением NULL - это поле без значения.
Если поле в таблице является необязательным, то можно вставить новую запись или обновить запись без добавления значения в это поле. Затем поле будет сохранено с значением NULL.
Примечание: Значение NULL отличается от нулевого значения или поля, содержащего пробелы. Поле с значением NULL - это поле, которое было оставлено пустым во время создания записи!
Как проверить наличие NULL значений?
Невозможно проверить наличие нулевых значений с помощью операторов сравнения, таких как =, <, or <>.
Вместо этого нам придется использовать оператор IS NULL и IS NOT NULL.
Синтаксис IS NULL
SELECT column_names
FROM table_name
WHERE column_name IS NULL;
Синтаксис IS NOT NULL
SELECT column_names
FROM table_name
WHERE column_name IS NOT NULL;
Демо база данных
Ниже приведен выбор из таблицы "Customers" в образце базы данных Northwind:
CustomerID | CustomerName | ContactName | Address | City | PostalCode | Country |
---|---|---|---|---|---|---|
1 |
Alfreds Futterkiste | Maria Anders | Obere Str. 57 | Berlin | 12209 | Germany |
2 | Ana Trujillo Emparedados y helados | Ana Trujillo | Avda. de la Constitución 2222 | México D.F. | 05021 | Mexico |
3 | Antonio Moreno Taquería | Antonio Moreno | Mataderos 2312 | México D.F. | 05023 | Mexico |
4 |
Around the Horn | Thomas Hardy | 120 Hanover Sq. | London | WA1 1DP | UK |
5 | Berglunds snabbköp | Christina Berglund | Berguvsvägen 8 | Luleå | S-958 22 | Sweden |
IS NULL
Оператор IS NULL используется для проверки пустых значений (NULL).
В следующем SQL файле перечислены все клиенты с значением NULL в поле "Address":
Пример
SELECT CustomerName, ContactName, Address
FROM Customers
WHERE Address
IS NULL;
Попробуйте сами »
Совет: Всегда используйте значение NULL для поиска значений NULL.
IS NOT NULL
Оператор IS NOT NULL используется для проверки непустых значений (NOT NULL).
В следующем SQL файле перечислены все клиенты со значением в поле "Address":
Пример
SELECT CustomerName, ContactName, Address
FROM Customers
WHERE Address
IS NOT NULL;
Попробуйте сами »