sp_fulltext_keymappings(Transact-SQL)
적용 대상: SQL Server Azure SQL Managed Instance Analytics Platform System (PDW)
문서 식별자(DocIds)와 전체 텍스트 키 값 간의 매핑을 반환합니다. DocId 열에는 전체 텍스트 인덱싱된 테이블의 특정 전체 텍스트 키 값에 매핑되는 bigint 정수에 대한 값이 포함됩니다. 검색 조건을 충족하는 DocId 값은 전체 텍스트 엔진에서 데이터베이스 엔진 전달되며, 여기서 쿼리되는 기본 테이블의 전체 텍스트 키 값에 매핑됩니다. 전체 텍스트 키 열은 테이블의 한 열에 필요한 고유 인덱스입니다.
구문
sp_fulltext_keymappings { table_id | table_id , docId | table_id , NULL , key }
[ ; ]
인수
table_id
전체 텍스트 인덱싱된 테이블의 개체 ID입니다. 잘못된 table_id 지정하면 오류가 반환됩니다. 테이블의 개체 ID를 가져오는 방법에 대한 자세한 내용은 OBJECT_ID 참조하세요.
docId
키 값에 해당하는 내부 문서 식별자(DocId)입니다. 잘못된 docId 값은 결과를 반환하지 않습니다.
key
지정된 테이블의 전체 텍스트 키 값입니다. 잘못된 키 값은 결과를 반환하지 않습니다. 전체 텍스트 키 값에 대한 자세한 내용은 전체 텍스트 인덱스 만들기 및 관리를 참조 하세요.
반환 코드 값
없음
결과 집합
열 이름 | 데이터 형식 | 설명 |
---|---|---|
DocId |
bigint | 키 값에 해당하는 내부 문서 식별자(DocId) 열입니다. |
Key |
1 | 지정된 테이블의 전체 텍스트 키 값입니다. 매핑 테이블에 전체 텍스트 키가 없으면 빈 행 집합이 반환됩니다. |
1 키의 데이터 형식은 기본 테이블에 있는 전체 텍스트 키 열의 데이터 형식과 동일합니다.
사용 권한
이 함수는 공용이며 특별한 권한이 필요하지 않습니다.
설명
다음 표에서는 한 개, 두 개 또는 세 개의 매개 변수를 사용한 결과에 대해 설명합니다.
이 매개 변수 목록... | 이 결과가 있습니다... |
---|---|
table_id | table_id 매개 변수 sp_fulltext_keymappings 만 사용하여 호출되는 경우 지정된 기본 테이블의 모든 전체 텍스트 키(키) 값과 각 키에 해당하는 DocId를 반환합니다. 여기에는 삭제 보류 중인 키가 포함됩니다.이 함수는 다양한 문제를 해결하는 데 유용합니다. 선택한 전체 텍스트 키가 정수 데이터 형식이 아닌 경우 전체 텍스트 인덱스 콘텐츠를 보는 데 유용합니다. 여기에는 결과의 sp_fulltext_keymappings 결과와 조인하는 작업이 sys.dm_fts_index_keywords_by_document 포함됩니다. 자세한 내용은 sys.dm_fts_index_keywords_by_document 참조하세요.그러나 일반적으로 가능한 경우 특정 전체 텍스트 키 또는 DocId를 지정하는 매개 변수를 사용하여 실행하는 sp_fulltext_keymappings 것이 좋습니다. 이는 전체 키 맵을 반환하는 것보다 훨씬 효율적입니다. 특히 전체 키 맵을 반환하는 성능 비용이 상당할 수 있는 큰 테이블의 경우 더욱 효율적입니다. |
table_id, docId | table_id 및 docId만 지정된 경우 docId는 NULL이 아니어야 하며 지정된 테이블에 유효한 DocId를 지정해야 합니다. 이 함수는 특정 전체 텍스트 인덱스의 DocId에 해당하는 기본 테이블에서 사용자 지정 전체 텍스트 키를 격리하는 데 유용합니다. |
table_id, NULL , 키 |
세 개의 매개 변수가 있는 경우 두 번째 매개 변수는 NULL NULL이 아니어야 하며 지정된 테이블에서 유효한 전체 텍스트 키 값을 지정해야 합니다. 이 함수는 기본 테이블에서 특정 전체 텍스트 키에 해당하는 DocId를 격리하는 데 유용합니다. |
다음과 같은 경우 오류가 반환됩니다.
- 잘못된 table_id 지정합니다.
- 테이블이 전체 텍스트 인덱싱되지 않음
NULL
이 null이 아닌 매개 변수에 대해 발견되었습니다.
예제
참고 항목
이 섹션의 예제에서는 AdventureWorks2022 샘플 데이터베이스의 표를 사용합니다 Production.ProductReview
. CREATE FULLTEXT INDEX에서 테이블에 제공된 예제를 ProductReview
실행하여 이 인덱스 만들기를 수행할 수 있습니다.
A. 모든 키 및 DocId 값 가져오기
다음 예제에서는 문을 사용하여 DECLARE @local_variable 지역 변수 @table_id
를 만들고 테이블의 ID를 ProductReview
해당 값으로 할당합니다. 이 예제에서는 table_id 매개 변수에 대한 지정을 @table_id
실행합니다sp_fulltext_keymappings
.
참고 항목
table_id 매개 변수만 사용하는 sp_fulltext_keymappings
것은 작은 테이블에 적합합니다.
USE AdventureWorks2022;
GO
DECLARE @table_id int = OBJECT_ID(N'Production.ProductReview');
EXEC sp_fulltext_keymappings @table_id;
GO
이 예에서는 다음과 같이 테이블에서 모든 DocId 및 전체 텍스트 키를 반환합니다.
TABLE | docId | key |
---|---|---|
1 |
1 |
1 |
2 |
2 |
2 |
3 |
3 |
3 |
4 |
4 |
4 |
B. 특정 키 값에 대한 DocId 값 가져오기
다음 예제에서는 DECLARE 문을 사용하여 지역 변수 @table_id
를 만들고 테이블의 ID를 ProductReview
해당 값으로 할당합니다. 이 예제에서는 table_id 매개 변수, NULL
docId 매개 변수 및 키 매개 변수에 대해 4를 지정하여 @table_id
실행 sp_fulltext_keymappings
합니다.
참고 항목
작은 테이블에 적합한 table_id 매개 변수만 함께 사용합니다sp_fulltext_keymappings
.
USE AdventureWorks2022;
GO
DECLARE @table_id int = OBJECT_ID(N'Production.ProductReview');
EXEC sp_fulltext_keymappings @table_id, NULL, 4;
GO
이 예에서는 다음 결과를 반환합니다.
TABLE | docId | key |
---|---|---|
4 |
4 |
4 |