SQL
NULL Values
`NULL` values are special values that are used to represent missing data in SQL. Columns of any type can contain `NULL` values. Logically, a `NULL` value can be seen as “the value of this field is unknown”.  
A `NULL` value can be inserted to any field that does not have the `NOT NULL` qualifier:  
```sql
CREATE TABLE integers (i INTEGER);
INSERT INTO integers VALUES (NULL);
```  
`NULL` values have special semantics in many parts of the query as well as in many functions:  
> Any comparison with a `NULL` value returns `NULL`, including `NULL = NULL`.  
You can use `IS NOT DISTINCT FROM` to perform an equality comparison where `NULL` values compare equal to each other. Use `IS (NOT) NULL` to check if a value is `NULL`.  
```sql
SELECT NULL = NULL;
```  
```text
NULL
```  
```sql
SELECT NULL IS NOT DISTINCT FROM NULL;
```  
```text
true
```  
```sql
SELECT NULL IS NULL;
```  
```text
true
```