NULL values represent missing unknown data.
By default, a table column can hold NULL values.
This chapter will explain the IS NULL and IS NOT NULL operators.
SQL NULL Values
If a column in a table is optional, we can insert a new record or update an existing record without adding a value to this column. This means that the field will be saved with a NULL value.NULL values are treated differently from other values.
NULL is used as a placeholder for unknown or inapplicable values.
Note: It is not possible to compare NULL and 0; they are not equivalent.
SQL Working with NULL Values
Look at the following "Persons" table:P_Id | LastName | FirstName | Address | City |
---|---|---|---|---|
1 | Hansen | Ola | Sandnes | |
2 | Svendson | Tove | Borgvn 23 | Sandnes |
3 | Pettersen | Kari | Stavanger |
How can we test for NULL values?
It is not possible to test for NULL values with comparison operators, such as =, <, or <>.
We will have to use the IS NULL and IS NOT NULL operators instead.
SQL IS NULL
How do we select only the records with NULL values in the "Address" column?We will have to use the IS NULL operator:
SELECT LastName,FirstName,Address FROM Persons WHERE Address IS NULL |
LastName | FirstName | Address |
---|---|---|
Hansen | Ola | |
Pettersen | Kari |
SQL IS NOT NULL
How do we select only the records with no NULL values in the "Address" column?We will have to use the IS NOT NULL operator:
SELECT LastName,FirstName,Address FROM Persons WHERE Address IS NOT NULL |
LastName | FirstName | Address |
---|---|---|
Svendson | Tove | Borgvn 23 |