FirebirdSQL logo

Imbrications

Les conditions vérifiables ne sont pas toujours des prédicats simples.Il peut s’agir d’un groupe de prédicats, dont chacun, lorsqu’il est calculé, contribue au calcul de la vérité globale.Ces conditions complexes sont appelées assertions.Les assertions peuvent être constituées d’un ou plusieurs prédicats liés par les opérateurs logiques AND, OR et NOT. Les parenthèses peuvent être utilisées pour regrouper des prédicats et contrôler l’ordre des calculs.

Chacun des prédicats peut contenir des prédicats imbriqués.Le résultat du calcul de la vérité d’une déclaration est obtenu en calculant tous les prédicats dans la direction de l’interne vers l’externe.Chaque "niveau" est calculé par ordre de priorité jusqu’à obtenir la valeur de vérité de l’énoncé final.

Prédicats de comparaison

Un prédicat de comparaison est constitué de deux expressions jointes par un opérateur de comparaison.Il existe six opérateurs de comparaison traditionnels :

=, >, <, >=, <=, <>

(Voir Opérateurs de comparaison pour une liste complète des opérateurs de comparaison).

Si une partie (gauche ou droite) d’un prédicat de comparaison contient NULL, la valeur du prédicat est indéfinie (UNKNOWN).

Example 1. Prédicats de comparaison

Obtenez des informations sur les ordinateurs dotés d’un processeur d’une fréquence d’au moins 500 MHz et d’un prix inférieur à 800 €.

SELECT *
FROM Pc
WHERE speed >= 500 AND price < 800;

Obtenez des informations sur toutes les imprimantes qui sont des imprimantes à matrice de points et qui coûtent moins de 300 €.

SELECT *
FROM Printer
WHERE type = 'matrix' AND price < 300;

La requête suivante ne retournera aucune entrée car la comparaison est faite avec une pseudo-valeur de NULL, même s’il existe des imprimantes avec un type non spécifié.

SELECT *
FROM Printer
WHERE type = NULL AND price < 300;
Note
Note sur les comparaisons de chaînes de caractères

Lors de la comparaison de l’égalité des types de champs CHAR et VARCHAR, les espaces de fin sont ignorés dans tous les cas.