ReuseWhere 函式
查詢中的 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 子句中的位置使用。
相關主題