Autres prédicats de comparaison
Les autres prédicats de comparaison sont constitués de mots-clés.
Les autres prédicats de comparaison sont constitués de mots-clés.
BETWEEN
DSQL, PSQL, ESQL.
<value> [NOT] BETWEEN <value_1> AND <value_2>
Le prédicat BETWEEN
vérifie si une valeur se situe (ou ne se situe pas en utilisant NOT) dans une plage de valeurs inclusive.
Les opérandes du prédicat BETWEEN
sont deux arguments de types compatibles.Contrairement à d’autres bases de données, dans Firebird le prédicat BETWEEN
n’est pas symétrique.La plus petite valeur doit être le premier argument, sinon le prédicat BETWEEN
sera toujours faux.La recherche est une recherche inclusive.Ainsi, le prédicat BETWEEN
peut être réécrit comme suit :
<value> >= <value_1> AND <value> <= <value_2>
Lors de l’utilisation du prédicat BETWEEN
dans les termes de recherche des requêtes DML, l’optimiseur Firebird peut utiliser un index sur la colonne recherchée, si disponible.
BETWEEN
SELECT *
FROM EMPLOYEE
WHERE HIRE_DATE BETWEEN date '01.01.1992' AND CURRENT_DATE
LIKE
DSQL, PSQL, ESQL.
<match value> [NOT] LIKE <pattern> [ESCAPE <escape character>] <match value> ::= expression de type caractère <pattern> ::= modèle de recherche <escape character> ::= caractère d’échappement
Le prédicat LIKE
compare une expression de type caractère avec le motif défini dans la seconde expression.La sensibilité à la casse ou aux signes diacritiques dans la comparaison est déterminée par le paramètre de tri utilisé (COLLATION
).
Lorsque vous utilisez l’opérateur LIKE
, tous les caractères de la chaîne de caractères du motif sont pris en compte.Cela s’applique également aux espaces avant et arrière.Si une opération de correspondance dans une requête doit renvoyer toutes les chaînes contenant des chaînes LIKE 'abv' (avec un caractère d’espacement à la fin), une chaîne contenant 'abv' (sans caractère d’échappement) ne sera pas renvoyée.
Deux symboles génériques peuvent être utilisés dans le modèle de recherche :
le caractère pourcentage (%
) remplace une séquence de caractères quelconques (le nombre de caractères de la séquence peut être égal ou supérieur à 0) dans la valeur à vérifier ;
Un caractère de soulignement (_
), qui peut être utilisé à la place de n’importe quel caractère dans la valeur testée.
Si la valeur testée correspond au modèle, y compris les caractères génériques, le prédicat est vrai.