SCOPE 述語と DIRECTORY 述語
フォルダー深度述語は、パスを指定し、深いトラバーサルと浅いトラバーサルのどちらを実行するかによって、検索の範囲を制御します。 フォルダー深度述語の構文を次に示します。
... WHERE [{SCOPE | DIRECTORY}='<protocol>:[{SID}]<path>']
述語の後に等号が続きます。 パスは単一引用符で囲まれており、プロトコルとコロン (たとえば、file:
、mapi:
、csc:
) で始まる必要があります。 SCOPE 述語は、すべてのサブフォルダーを含むパスのディープ トラバーサルを実行しますが、DIRECTORY 述語は指定されたフォルダーのみの浅いトラバーサルを実行します。 他の構造化クエリ言語 (SQL) の制限と同様に、1 つのクエリで複数のフォルダー深度制限を指定できます。
リモート コンピューターのローカル カタログに対してクエリを実行するには、カタログの前のコンピューター名と、SCOPE 句または DIRECTORY 句にリモート コンピューターの汎用名前付け規則 (UNC) パスを含めます。
例
SELECT System.ItemName FROM SystemIndex WHERE SCOPE='file:C:/Files/Reports'
SELECT System.ItemName FROM SystemIndex WHERE DIRECTORY='file:C:/Files/Reports'
SELECT System.ItemName FROM SystemIndex WHERE SCOPE='file:C:/Files/Published' OR SCOPE='file:C:/Files/Reports' AND NOT SCOPE='file:C:/Files/Reports/Confidential'
SELECT System.ItemName FROM zarasmachine.SystemIndex WHERE SCOPE='file://zarasmachine/C:/Files/Reports'
SELECT System.ItemURL FROM SystemIndex WHERE SCOPE='mapi://{S-1-5-21-2117521111-1604012920-1887927527-2285604}/Mailbox user/' AND CONTAINS('Microsoft')
最初の SCOPE の例では、C:\Files\Reports フォルダーとそのすべてのサブフォルダーを検索します。 DIRECTORY の例では、ルート フォルダー C:\Files\Reports のみを検索します。
手記
ファイル システムの円記号 (\) は、URL スタイルのスラッシュ (スラッシュとも呼ばれます) (/) になります。
関連トピック