ReuseWhere, fonction
La clause WHERE d’une requête spécifie un ensemble d’éléments sur lesquels faire correspondre les résultats. Les requêtes suivantes peuvent partager le travail effectué pour une requête précédente à l’aide de la fonction ReuseWhere dans une nouvelle clause WHERE de requête. Les requêtes qui tirent parti de cette fonction s’exécutent plus rapidement.
Exemples
Le scénario suivant montre comment utiliser la fonction ReuseWhere :
Vous émettez la requête suivante :
SELECT System.ItemName FROM SystemIndex WHERE CONTAINS(*, 'pencil') AND System.ItemDate > '2007-3-5'
Dans l’ensemble de lignes retourné, vous obtenez un ID Where, Query1WhereID.
L’ID Where est une propriété d’ensemble de lignes avec PROPSET {aa6ee6b0-e828-11d0-b2-3e-00-aa-00-47-fc-01 }, PROPID 8 et type UI4.
Vous émettez une deuxième requête avec la fonction ReuseWhere, en passant le Query1WhereID de l’étape 2 :
SELECT System.ItemUrl FROM SystemIndex WHERE ReuseWhere(Query1WhereID) AND SCOPE='file:'
La deuxième requête est équivalente à ce qui suit :
SELECT System.ItemUrl, System.ItemName FROM SystemIndex
WHERE CONTAINS(*, 'pencil') AND System.ItemDate > '2007-3-5' AND Scope='file:'
La fonction ReuseWhere peut être utilisée n’importe où dans la clause WHERE .
Rubriques connexes
-
Informations de référence