Documentation PostgreSQL 7.4.29 | ||||
---|---|---|---|---|
Précédent | Arrière rapide | Chapitre 9. Fonctions et opérateurs | Avance rapide | Suivant |
Les opérateurs de comparaison habituels sont disponibles, comme l'indique Tableau 9-1.
Tableau 9-1. Opérateurs de comparaison
Opérateur | Description |
---|---|
< | inférieur à |
> | supérieur à |
<= | inférieur ou égal à |
>= | supérieur ou égal à |
= | égal à |
<> ou != | différent de |
Note : L'opérateur != est converti en <> au moment de l'analyse. Il n'est pas possible d'implémenter les opérateurs != et <> pour faire d'autres choses.
Les opérateurs de comparaison sont disponibles pour tous les types de données où cela a un sens. Tous les opérateurs de comparaison sont des opérateurs binaires renvoyant des valeurs du type boolean; des expressions comme 1 < 2 < 3 ne sont pas valides (car il n'existe pas d'opérateur < pour comparer une valeur booléenne avec 3).
En plus des opérateurs de comparaison, la construction spéciale BETWEEN est disponible.
a BETWEEN x AND y
est équivalent à
a >= x AND a <= y
De même,
a NOT BETWEEN x AND y
est équivalent à
a < x OR a > y
Il n'y a pas de différence entre les deux formes respectives si ce n'est les cycles CPU requis pour ré-écrire en interne la première sous la forme de la seconde.
Pour vérifier si une valeur est NULL ou non, utilisez les constructions
expression IS NULL expression IS NOT NULL
ou la construction équivalente, non standard,
expression ISNULL expression NOTNULL
N'écrivez pas expression = NULL parce que NULL n'est pas << égal à >> NULL. (La valeur NULL représente une valeur inconnue, et il est impossible de dire si deux valeurs inconnues sont égales.)
Quelques applications pourraient (de façon erroné) requérir que expression = NULL renvoie true si expression s'évalue comme la valeur NULL. Pour supporter ces applications, l'option à l'exécution transform_null_equals peut être activée (c'est-à-dire SET transform_null_equals TO ON;). PostgreSQL convertira alors les clauses x = NULL en x IS NULL. C'était le comportement par défaut des versions 6.5 à 7.1.
Les valeurs booléennes peuvent aussi être testées en utilisant les constructions
expression IS TRUE expression IS NOT TRUE expression IS FALSE expression IS NOT FALSE expression IS UNKNOWN expression IS NOT UNKNOWN
Elles sont similaires à IS NULL dans le fait qu'elles renverront toujours true ou false, jamais une valeur NULL, même quand l'opérande est NULL. Une entrée NULL est traitée comme la valeur logique << inconnue >>.
Précédent | Sommaire | Suivant |
Fonctions et opérateurs | Niveau supérieur | Fonctions et opérateurs mathématiques |