Compare une valeur de colonne à une valeur de colonne dans plusieurs lignes dans une sous-requête.
référence_de_colonne prédicat_de_comparaison SOME | ANY | ALL (sous-requête)
Description
Utilisez les prédicats de comparaison quantifiée SOME, ANY et ALL pour filtrer une table en comparant une valeur de colonne à plusieurs valeurs de comparaison. Les prédicats de comparaison quantifiée sont utilisés avec des prédicats de comparaison pour comparer une valeur de colonne à plusieurs valeurs dans une colonne de sous-requête.
Le prédicat ANY évalue TRUE lorsque le prédicat de comparaison associé évalue à TRUE n'importe quelle valeur d'une sous-requête. Le prédicat SOME opère fonctionnellement de manière identique au prédicat ANY. Par exemple, au moyen de l'instruction ci-dessous, pour qu'une ligne soit extraite de la table HOLDINGS, il suffit que la valeur dans la colonne PRIX_ACH soit supérieure à une des valeurs renvoyées dans la colonne PRIX de la sous-requête.
SELECT *
FROM "holdings.dbf" H
WHERE (H."prix_ach" > ANY
(SELECT O."prix"
Le prédicat ALL évalue TRUE lorsque le prédicat de comparaison associé évalue à TRUE toutes les valeurs d'une sous-requête. Par exemple, au moyen de l'instruction ci-dessous, pour qu'une ligne soit extraite de la table HOLDINGS, il faut que la valeur dans la colonne PRIX_ACH soit supérieure à toutes les valeurs renvoyées dans la colonne PRIX de la sous-requête.
SELECT *
FROM "holdings.dbf" H
WHERE (H."prix_ach" > ALL
(SELECT O."prix"
FROM "ancien_ventes.dbf"))
Remarque : La sous-requête qui fournit les valeurs de comparaison pour les prédicats de comparaison quantifiée peut extraire plusieurs lignes, mais ne peut avoir qu'une seule colonne.