Microsoft SQL Server
Indeksowanie pełnotekstowe
Szukaj…
A. Tworzenie unikalnego indeksu, katalogu pełnotekstowego i indeksu pełnotekstowego
Poniższy przykład tworzy unikalny indeks w kolumnie JobCandidateID tabeli HumanResources.JobCandidate przykładowej bazy danych AdventureWorks2012. Przykład tworzy następnie domyślny katalog pełnotekstowy, ft. Wreszcie przykład tworzy indeks pełnotekstowy w kolumnie Wznów, używając katalogu ft i systemowej listy stop.
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/en-us/library/cc879306.aspx
https://msdn.microsoft.com/en-us/library/ms142571.aspx
Tworzenie indeksu pełnotekstowego w kilku kolumnach tabeli
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
Tworzenie indeksu pełnotekstowego z listą właściwości wyszukiwania bez zapełniania go
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
I zapełniając go później
ALTER FULLTEXT INDEX ON Production.Document SET CHANGE_TRACKING AUTO;
GO
Wyszukiwanie pełnotekstowe
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;
Aby uzyskać więcej szczegółowych informacji https://msdn.microsoft.com/en-us/library/ms142571.aspx
Modified text is an extract of the original Stack Overflow Documentation
Licencjonowany na podstawie CC BY-SA 3.0
Nie związany z Stack Overflow