Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Die Bedingungen, die bestimmen, ob ein Dokument in den ergebnissen enthalten ist, die von der Abfrage zurückgegeben werden, werden durch die WHERE-Klausel angegeben. Auf der höchsten Ebene gibt es zwei Teile der WHERE-Klauselsyntax:
...WHERE [<group_aliases>] <search_condition>
...WHERE ReuseWhere(<WHEREID>)
Der optionale <group_alias> Teil der Klausel vereinfacht komplexe Abfragen, indem einer Gruppe von mindestens einer Spalte ein Alias zugewiesen wird. Dies kann die Lesbarkeit komplexer Abfragen verbessern, die nach denselben Informationen in mehreren Spalten suchen, die durch URLs angegeben werden. Weitere Informationen zu Gruppenaliasen finden Sie unter WITH -- AS Group Alias Predicate.
Die <Suchbedingung> Teil der WHERE-Klausel ist ein oder mehrere Suchvorrädikate, die übereinstimmende Kriterien für die Suche angeben. Such-Prädikate sind Ausdrücke, die einige Tatsachen über einen bestimmten Wert bestätigen.
Das Ergebnis einer Suchbedingung ist ein boolescher Wert, entweder TRUE, wenn das Dokument die angegebenen Suchbedingungen erfüllt, oder FALSE wenn dies nicht der Fall ist. Wenn das Ergebnis TRUEist, wird das Dokument zurückgegeben. Wenn das Ergebnis FALSE-ist, wird das Dokument nicht zurückgegeben. Dokumenten, die in einer Microsoft Windows Search-Abfrage zurückgegeben werden, werden rangfolgenwerte entsprechend der Übereinstimmung mit den Suchbedingungen zugewiesen. Jede Der Abfragesuchbedingungen kann eine RANKBY- Klausel enthalten, die das Ändern der zurückgegebenen Rangwerte unterstützt.
Die funktion ReuseWhere macht mehrere Abfragen, die dieselben Suchbedingungen verwenden, effizienter. Die WHERE-Klausel in einer Abfrage gibt den Satz von Elementen an, die in einer Abfrage übereinstimmen. Nachfolgende Abfragen können die für die vorherige Auswertung ausgeführten Arbeit freigeben, indem sie die Funktion "ReuseWhere" in der neuen WHERE-Abfrageklausel verwenden.
Such-Prädikate
Eine Suchbedingung besteht aus einem oder mehreren Prädikaten oder Suchbedingungen, die beschreiben, wonach der Benutzer sucht (z. B. WHERE System.DateCreated >'2006-04-19'). Such-Prädikate können mit den logischen Operatoren UND, ODERoder NICHTkombiniert werden. Der optionale unäre Operator NOT kann nur mit UND verwendet werden und nur den Wahrheitswert eines Prädikats oder einer Suchbedingung negieren. Sie können Klammern verwenden, um logische Ausdrücke zu gruppieren und zu verschachteln.
Die folgende Tabelle zeigt die Reihenfolge der Rangfolge für die logischen Operatoren.
| Reihenfolge (Rangfolge) | Logischer Operator |
|---|---|
| Erster (höchster) | NICHT |
| Sekunde | UND |
| Dritter (niedrigster) | ODER |
Logische Operatoren desselben Typs sind assoziativ, und es gibt keine angegebene Berechnungsreihenfolge. Beispielsweise kann (A AND B) AND (C AND D) (A AND D) AND (B AND C) ohne Änderung des logischen Ergebnisses berechnet werden.
Wichtig
Falsch: WHERE NICHT ENTHÄLT ('Computer')
Richtig: ENTHÄLT ('Software') UND NICHT ENTHÄLT ('Computer')
In komplexen Abfragen möchten Sie möglicherweise mehr Betonung auf Übereinstimmungen in einigen Spalten als in anderen Spalten legen. Wenn Sie beispielsweise nach Dokumenten suchen, die "Softwaredesign" besprechen, ist die Suche nach dem Suchbegriff im Dokumenttitel wahrscheinlich eine gute Übereinstimmung, als die einzelnen Wörter im Text des Dokuments zu finden. Um die Rangfolge von Dokumenten auf diese Weise zu beeinflussen, unterstützt die Microsoft Windows Search-Abfragesprache die Gewichtung der Suchbedingungen. Weitere Informationen zur Spaltengewichtung finden Sie unter CONTAINS-Prädikat und FREETEXT-Prädikat.
Es gibt drei Gruppen von Such-Prädikaten in der Windows-Suche: Volltext-, Nicht-Volltext- und Ordnertiefessuchen. Volltextsuche-Prädikate entsprechen in der Regel der Bedeutung des Inhalts, titels und anderer Spalten und unterstützen den sprachlichen Abgleich (z. B. alternative Wortformen, Ausdrücke und Näherungssuche). Im Gegensatz dazu stimmen Nicht-Volltext-Such-Prädikate mit dem Wert der angegebenen Spalten überein und enthalten keine spezielle linguistische Verarbeitung, bieten aber in mehreren Fällen zeichenbasierte Musterabgleiche. Ordnertiefe-Prädikate beschränken den Suchbereich auf einen angegebenen Pfad.
Anmerkung
Wenn die Abfrage ein Dokument zurückgibt, weil ein Nicht-Volltext-Prädikat als TRUE- für dieses Dokument ausgewertet wird, wird der Rangwert als 1000 berechnet. Mithilfe der Rangkoersionsfunktion kann den Rangwert ändern.
In den folgenden Tabellen werden die Prädikate für die Volltext-, Nicht-Volltext- und Ordnertiefe beschrieben.
| Volltext-Prädikat | Beschreibung |
|---|---|
| ENTHÄLT | Unterstützt komplexe Suchvorgänge für Begriffe in Dokumenttextspalten (z. B. Titel, Inhalt). Kann nach inflected Forms of the search terms, test for proximity of the terms, and perform logical comparisons. Suchbegriffe können Wildcardzeichen enthalten. |
| FREETEXT- | Sucht nach Dokumenten, die der Bedeutung des Suchausdrucks entsprechen. Verwandte Wörter und ähnliche Ausdrücke stimmen überein, wobei die Rangspalte basierend darauf berechnet wird, wie genau das Dokument mit dem Suchbegriff übereinstimmt. Suchbegriffe können keine Wildcardzeichen enthalten. |
| Nicht volltextiges Prädikat | Beschreibung |
|---|---|
| MÖGEN | Spaltenwerte werden mithilfe eines einfachen Musterabgleichs mit Wildcardzeichen verglichen. |
| Literalwertvergleich | Spaltenwerte werden mit Zeichenfolgen-, Datums-, Zeitstempel-, numerischen und anderen Literalwerten verglichen. Dieses Prädikat unterstützt Gleichheit und Ungleichheit wie größer als und kleiner als. |
| Mehrwertige Vergleiche (ARRAY) | Mehrwertige Spalten werden mit einem mehrwertigen Array von Literalen verglichen. |
| NULL- | Spaltenwerte, die für das Dokument nicht definiert sind, können mithilfe des NULL- Prädikats erkannt werden. |
| Ordnertiefe | Beschreibung |
|---|---|
| BEREICH | Führt eine tiefe Durchquerung des angegebenen Pfads durch, einschließlich des spezifischen Ordners und aller Unterordner. |
| DIRECTORY- | Führt eine flache Durchquerung des angegebenen Pfads durch, wobei nur der jeweilige Ordner durchsucht wird. |
Beispiele
Beispiele für die WHERE-Klausel finden Sie in den einzelnen Prädikatthemen, die in der vorherigen Tabelle verknüpft sind.
Verwandte Themen
-
Referenz-
-
Konzeptionelle