Comment utiliser des prédicats de comparaison et entre dans les états SQL

Typiquement, vous allez utiliser comparaisons SQL prédicats de comparer une valeur avec un autre. Pour chaque ligne dans lequel la comparaison renvoie une valeur Vrai, cette valeur satisfait la clause, et l'opération (SELECT, METTRE À JOUR, EFFACER, ou autre) exécute sur cette ligne. Les lignes qui évalue à la comparaison FAUX sont ignorés. Considérez l'instruction SQL suivante:

* SELECT FROM Calories FOODSWHERE lt; 219 -

Cette déclaration affiche toutes les lignes de la table des aliments qui ont une valeur de moins de 219 dans le Calories colonne.

Comparaisonsymbole
Égalité=
Inégallt;>
Moins delt;
Inférieur ou égallt; =
Plus grand que>
Supérieur ou égal> =

Parfois, vous voulez sélectionner une ligne si la valeur dans une colonne tombe dans une plage spécifiée. Une façon de rendre cette sélection est d'utiliser des prédicats comparaisons. Par exemple, vous pouvez formuler une clause pour sélectionner toutes les lignes de la table des aliments qui ont une valeur dans la Calories colonne supérieur à 100 et inférieur à 300, comme suit:

OÙ FOODS.Calories> 100 et FOODS.Calories lt; 300

Cette comparaison ne comprend pas les aliments avec un nombre de calories d'exactement 100 ou 300 - seules les valeurs qui tombent entre ces deux nombres. Pour inclure les points d'extrémité (dans ce cas, 100 et 300), vous pouvez écrire l'énoncé comme suit:




OÙ FOODS.Calories> = 100 et FOODS.Calories lt; = 300

Une autre façon de spécifier une gamme qui inclut les points d'extrémité est d'utiliser un ENTRE prédicat de la manière suivante:

OÙ FOODS.Calories entre 100 et 300

Cette clause est fonctionnellement identique à l'exemple précédent, qui utilise comparaisons prédicats. Cette formulation permet d'économiser de la frappe - et il est un peu plus intuitif que celui qui utilise deux prédicats de comparaison reliés par l'opérateur logique ET.

La ENTRE mot-clé peut être source de confusion, car il ne vous dit pas explicitement si la clause comprend les points d'extrémité. En fait, la clause t inclure ces points d'extrémité. Lorsque vous utilisez le ENTRE mot-clé, un peu birdy ne swoop résume pas à vous rappeler que le premier terme de la comparaison doit être inférieure à la deuxième ou égale à.

Si, par exemple, FOODS.Calories contient une valeur de 200, l'alinéa suivant retourne une valeur True:

OÙ FOODS.Calories entre 100 et 300

Toutefois, une clause que vous pouvez penser est équivalent à l'exemple précédent renvoie le résultat inverse, Faux:

OÙ FOODS.Calories entre 300 et 100

Si vous utilisez ENTRE, vous devez être en mesure de garantir que le premier terme dans votre comparaison est toujours inférieure à la deuxième durée égale ou.

Vous pouvez utiliser le ENTRE prédicat de caractère, peu, et les types de données datetime ainsi qu'avec les types numériques. Vous pouvez voir quelque chose comme l'exemple suivant:

SELECT Prénom, LastNameFROM CUSTOMERWHERE Client.Nom entre «A» et «Mzzz '-

Cet exemple renvoie tous les clients dont les noms sont dans la première moitié de l'alphabet.


» » » » Comment utiliser des prédicats de comparaison et entre dans les états SQL