Microsoft SQL Server
Volltextindizierung
Suche…
A. Erstellen eines eindeutigen Indexes, eines Volltextkatalogs und eines Volltextindex
Im folgenden Beispiel wird ein eindeutiger Index für die Spalte JobCandidateID der Tabelle HumanResources.JobCandidate der AdventureWorks2012-Beispieldatenbank erstellt. Das Beispiel erstellt dann einen Standard-Volltextkatalog, ft. Schließlich erstellt das Beispiel einen Volltextindex für die Spalte Resume, wobei der ft-Katalog und die Systemstopliste verwendet werden.
USE AdventureWorks2012;
GO
CREATE UNIQUE INDEX ui_ukJobCand ON HumanResources.JobCandidate(JobCandidateID);
CREATE FULLTEXT CATALOG ft AS DEFAULT;
CREATE FULLTEXT INDEX ON HumanResources.JobCandidate(Resume)
KEY INDEX ui_ukJobCand
WITH STOPLIST = SYSTEM;
GO
https://www.simple-talk.com/sql/learn-sql-server/understanding-full-text-indexing-in-sql-server/
https://msdn.microsoft.com/de-de/library/cc879306.aspx
https://msdn.microsoft.com/de-de/library/ms142571.aspx
Erstellen eines Volltextindex für mehrere Tabellenspalten
USE AdventureWorks2012;
GO
CREATE FULLTEXT CATALOG production_catalog;
GO
CREATE FULLTEXT INDEX ON Production.ProductReview
(
ReviewerName
Language 1033,
EmailAddress
Language 1033,
Comments
Language 1033
)
KEY INDEX PK_ProductReview_ProductReviewID
ON production_catalog;
GO
Erstellen eines Volltextindex mit einer Sucheigenschaftenliste, ohne ihn aufzufüllen
USE AdventureWorks2012;
GO
CREATE FULLTEXT INDEX ON Production.Document
(
Title
Language 1033,
DocumentSummary
Language 1033,
Document
TYPE COLUMN FileExtension
Language 1033
)
KEY INDEX PK_Document_DocumentID
WITH STOPLIST = SYSTEM, SEARCH PROPERTY LIST = DocumentPropertyList, CHANGE_TRACKING OFF, NO POPULATION;
GO
Und später mit bevölkern
ALTER FULLTEXT INDEX ON Production.Document SET CHANGE_TRACKING AUTO;
GO
Volltextsuche
SELECT product_id
FROM products
WHERE CONTAINS(product_description, ”Snap Happy 100EZ” OR FORMSOF(THESAURUS,’Snap Happy’) OR ‘100EZ’)
AND product_cost < 200 ;
SELECT candidate_name,SSN
FROM candidates
WHERE CONTAINS(candidate_resume,”SQL Server”) AND candidate_division =DBA;
Weitere und detaillierte Informationen erhalten Sie unter https://msdn.microsoft.com/de-de/library/ms142571.aspx
Modified text is an extract of the original Stack Overflow Documentation
Lizenziert unter CC BY-SA 3.0
Nicht angeschlossen an Stack Overflow