다음을 통해 공유


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

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

항목 내용

수행할 작업…

  • 문서의 키 구 찾기

    • 방법: SEMANTICKEYPHRASETABLE을 사용하여 문서의 키 구 찾기

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

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

문서의 키 구 찾기

방법: SEMANTICKEYPHRASETABLE을 사용하여 문서의 키 구 찾기

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

SEMANTICKEYPHRASETABLE은 지정된 테이블의 열과 관련된 키 구가 있는 0개 이상의 행으로 구성된 테이블을 반환합니다. SELECT 문의 FROM 절에서 이 행 집합 함수를 일반 테이블 이름과 마찬가지로 참조할 수 있습니다.

[!참고]

SQL Server 2012에서는 단일 단어만 의미 체계 검색을 위해 인덱싱되며 여러 단어로 된 구(ngrams)는 인덱싱되지 않습니다. 또한 동일한 단어의 다양한 형태가 개별적으로 인덱싱됩니다. 예를 들어 "computer"와 "computers"는 개별적으로 인덱싱됩니다.

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

중요 정보중요

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

[맨 위]

예 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

[맨 위]