Einführung in die Volltextsuche

Die Volltextsuche ermöglicht die schnelle und flexible Indizierung für die schlüsselwortbasierte Abfrage von Textdaten, die in einer Microsoft SQL Server-Datenbank gespeichert sind. Im Gegensatz zum LIKE-Prädikat, das nur für Zeichenmuster verwendbar ist, werden bei Volltextabfragen linguistische Suchvorgänge auf diesen Daten ausgeführt, indem sie nach den Regeln einer bestimmten Sprache in Wörter und Ausdrücke zerlegt werden.

Die Volltextsuche in Microsoft SQL Server 2005 bietet unternehmensweite Suchfunktionalität. Durch erhebliche Verbesserungen auf den Gebieten Leistung, Verwaltbarkeit und Funktionalität werden außergewöhnliche Suchfunktionen für Anwendungen jeder Größe zur Verfügung gestellt.

Der Leistungsvorteil durch die Verwendung der Volltextsuche wird bei der Abfrage umfangreicher unstrukturierter Textdaten am deutlichsten. Eine LIKE-Abfrage für Millionen von Zeilen von Textdaten kann Minuten in Anspruch nehmen; eine Volltextabfrage kann dagegen in Sekunden oder weniger für dieselben Daten ein Ergebnis liefern, je nach Anzahl der zurückgegebenen Zeilen.

Sie können Volltextindizes für Spalten erstellen, die char, varchar und nvarchar-Daten enthalten. Daneben können Volltextindizes für Spalten mit formatierten Binärdaten erstellt werden, wie z. B. Microsoft Word-Dokumente, die in einer varbinary(max)- oder image-Spalte gespeichert sind. Mit dem LIKE-Prädikat können Sie keine formatierten Binärdaten abfragen.

Damit ein Volltextindex für eine Tabelle erstellt werden kann, muss die Tabelle eine einzelne eindeutige Spalte aufweisen, die keine NULL-Werte enthält. Betrachten Sie beispielsweise einen Volltextindex für die Document-Tabelle in Adventure Works, in der die DocumentID-Spalte die Primärschlüsselspalte darstellt. Ein Volltextindex zeigt an, dass das Wort "instructions" bei den Wortnummern 24 und 44 in der DocumentSummary-Spalte für die mit der DocumentID 3 verknüpften Zeile zu finden ist. Diese Indexstruktur unterstützt eine effiziente Suche nach allen Elementen, die indizierte Wörter enthalten, sowie erweiterte Suchoperationen, wie die Suche nach Ausdrücken und NEAR-Suchen. Weitere Informationen finden Sie unter Document-Tabelle (AdventureWorks).

Bei der Verarbeitung einer Volltextabfrage gibt das Suchmodul die Schlüsselwerte der Zeilen, die den Suchkriterien entsprechen, an SQL Server zurück. Wenn Sie mit einer Volltextabfrage die Dokumente finden möchten, die das Wort "instructions" enthalten, werden aus dem Volltextindex die DocumentID-Werte 3, 4, 6, 7 und 8 abgerufen. Anhand dieser Schlüssel werden von SQL Server dann die übereinstimmenden Zeilen zurückgegeben.

Siehe auch

Konzepte

Grundlegendes zur Volltextsuche

Andere Ressourcen

Erweiterte Volltextsuche
LIKE (Transact-SQL)
Konzepte der Volltextsuche

Hilfe und Informationen

Informationsquellen für SQL Server 2005