다음을 통해 공유


의미 체계 검색을 사용하여 문서에서 키 구 찾기

적용 대상: SQL Server

통계 의미 체계 인덱싱을 위해 구성된 문서 또는 텍스트 열에서 키 구를 찾는 방법에 대해 설명합니다.

SEMANTICKEYPHRASETABLE을 사용하여 문서에서 키 구 찾기

특정 문서에서 키 구를 식별하거나 특정 키 구가 포함된 문서를 식별하려면 함수 semantickeyphrasetable(Transact-SQL)을 쿼리합니다.

SEMANTICKEYPHRASETABLE은 지정된 테이블의 열과 연결된 해당 키 구에 대해 0개 이상의 행이 있는 테이블을 반환합니다. SELECT 문의 FROM 절에서 일반 테이블 이름처럼 이 행 집합 함수를 참조할 수 있습니다.

참고 항목

이 릴리스에서는 단일 단어만 의미 체계 검색을 위해 인덱싱되며 여러 단어로 된 구(ngrams)는 인덱싱되지 않습니다. 또한 동일한 단어의 다양한 형태가 별도로 인덱싱됩니다. 예를 들어 "computer" 및 "computers"는 별도로 인덱싱됩니다.

SEMANTICKEYPHRASETABLE 함수에 필요한 매개 변수와 이 함수에서 반환되는 결과 테이블에 대한 자세한 내용은 semantickeyphrasetable(Transact-SQL)을 참조하세요.

Important

대상 열에는 전체 텍스트 및 의미 체계 인덱싱이 사용하도록 설정되어 있어야 합니다.

예 1: 특정 문서에서 상위 키 구 찾기

다음 예제에서는 AdventureWorks 예제 데이터베이스에 있는 Production.Document 테이블의 Document 열에서 @DocumentId 변수를 통해 지정된 문서에서 상위 10개의 키 구를 검색합니다. @DocumentId 변수는 전체 텍스트 인덱스의 키 열에서 값을 나타냅니다.

SELECT TOP(10) KEYP_TBL.keyphrase  
FROM SEMANTICKEYPHRASETABLE  
    (  
    Production.Document,  
    Document,  
    @DocumentId  
    ) AS KEYP_TBL  
ORDER BY KEYP_TBL.score DESC;  
GO  

SEMANTICKEYPHRASETABLE 함수는 테이블 검색 대신 인덱스 검색을 사용하여 이러한 결과를 효율적으로 검색합니다.

예 2: 특정 키 구가 포함된 상위 문서 찾기

다음 예제에서는 AdventureWorks 예제 데이터베이스에 있는 Production.Document 테이블의 Document 열에서 키 구 "Bracket"이 포함된 상위 25개의 문서를 검색합니다.

SELECT TOP (25) DOC_TBL.DocumentID, DOC_TBL.DocumentSummary  
FROM Production.Document AS DOC_TBL  
    INNER JOIN SEMANTICKEYPHRASETABLE  
    (  
    Production.Document,  
    Document  
    ) AS KEYP_TBL  
ON DOC_TBL.DocumentID = KEYP_TBL.document_key  
WHERE KEYP_TBL.keyphrase = 'Bracket'  
ORDER BY KEYP_TBL.Score DESC;  
GO