查詢中的 WHERE 子句會指定要比對結果的一組專案。 後續查詢可以使用新查詢 WHERE 子句中的 ReuseWhere 函式,共用先前查詢所執行的工作。 利用此函式的查詢執行速度較快。
例子
下列案例示範如何使用 ReuseWhere 函式:
您發出下列查詢:
SELECT System.ItemName FROM SystemIndex WHERE CONTAINS(*, 'pencil') AND System.ItemDate > '2007-3-5'從傳回的數據列集,您會取得 Where ID,Query1WhereID。
Where ID 是具有 PROPSET {aa6ee6b0-e828-11d0-b2-3e-00-aa-00-47-fc-01 }、PROPID 8 和類型 UI4 的數據列集屬性。
您會使用 ReuseWhere 函式發出第二個查詢,並傳入步驟 2 中的 Query1WhereID:
SELECT System.ItemUrl FROM SystemIndex WHERE ReuseWhere(Query1WhereID) AND SCOPE='file:'
第二個查詢相當於下列專案:
SELECT System.ItemUrl, System.ItemName FROM SystemIndex
WHERE CONTAINS(*, 'pencil') AND System.ItemDate > '2007-3-5' AND Scope='file:'
ReuseWhere 函式可以在 WHERE 子句中的任何位置使用。
相關主題