Notes et traduction du tutoriel PostgreSQL Tutorial
Dans l'univers des bases de données, NULL signifie l'absence d'information (indéterminé) ou non applicable. NULL n'est pas une valeur et ne peut donc pas être comparé à une valeur comme un nombre ou une chaine de caractères.
La comparaison entre NULL et une valeur retourne toujours NULL. et NULL n'est pas égal à NULL
-- cette requete retournera NULL (indéterminé) SELECT NULL = NULL AS RESULT;
Pour vérifier si une valeur est NULL, on peut pas utiliser les opérateurs = ou <> ;
Il faut utiliser l'opérateur IS NULL
VALUE IS NULL
L'opérateur retourne vrai si “value” est NULL, faux sinon. L'opérateur contraire IS NOT NULL existe également.
VALUE IS NOT NULL
Pour apprendre comment utiliser IS NULL dans une requête de tri voir la note ORDER BY ;
PostgreSQL propose des fonctions permettant de travailler avec NULL comme NULLIF, ISNULL ou COALESCE ;
Pour vous assurer qu'une colonne ne contiendra pas de valeur indéterminée NULL, vous pouvez utiliser la contrainte NOT NULL.
NULL par une chaine de caractère vide. Pour modifier la façon dont psql représente NULL dans le terminal on peut utiliser la commande suivante :
\pset null 'NULL'
-- Retrouver les enregistrements dont le champs address2 est non renseigné SELECT address, address2 FROM address WHERE address2 IS NULL;
IS NULL retourne vrai si la valeur est NULL, faux sinon ;IS NOT NULL existe également.