sp_fulltext_keymappings (Transact-SQL)
Область применения: SQL Server Управляемый экземпляр SQL Azure Платформенная система аналитики (PDW)
Возвращаются сопоставления идентификаторов документов (DocIds) и значений полнотекстовых ключей. Столбец DocId содержит значения для целого числа bigint , которое сопоставляется с определенным значением полнотекстового ключа в полнотекстовой индексированной таблице. Значения DocId, удовлетворяющие условию поиска, передаются из средства полнотекстового поиска в компонент Database Engine, где они сопоставляются со значениями полнотекстового ключа из базовой таблицы, к которой был сделан запрос. Столбец полнотекстового ключа — это уникальный индекс, который необходим для одного столбца таблицы.
Соглашения о синтаксисе Transact-SQL
Синтаксис
sp_fulltext_keymappings { table_id | table_id , docId | table_id , NULL , key }
[ ; ]
Аргументы
table_id
Идентификатор объекта полнотекстовой индексации таблицы. Если указать недопустимый table_id, возвращается ошибка. Сведения о получении идентификатора объекта таблицы см. в OBJECT_ID.
docId
Внутренний идентификатор документа (DocId), соответствующий значению ключа. Недопустимое значение docId не возвращает результатов.
key
Значение полнотекстового ключа из указанной таблицы. При использовании недопустимого значения key не происходит возврата значений. Сведения о значениях полнотекстового ключа см. в статье "Создание полнотекстовых индексов" и управление ими.
Значения кода возврата
Нет.
Результирующий набор
Имя столбца | Тип данных | Description |
---|---|---|
DocId |
bigint | Столбец внутреннего идентификатора документа (DocId), соответствующий значению ключа. |
Key |
1 | Значение полнотекстового ключа из указанной таблицы. Если в таблице сопоставлений отсутствуют полнотекстовые ключи, то возвращается пустой набор строк. |
1 Тип данных для ключа совпадает с типом данных столбца полнотекстового ключа в базовой таблице.
Разрешения
Эта функция является общедоступной и не требует специальных разрешений.
Замечания
В следующей таблице описывается эффект от использования одного, двух или трех параметров.
Возвращается ошибка, если выполняется любое из следующих условий.
- Указать недопустимый table_id
- Таблица не индексируется полнотекстовой
NULL
обнаружен параметр, который может быть не null.
Примеры
Примечание.
Примеры в этом разделе используют таблицу Production.ProductReview
примера базы данных AdventureWorks2022. Этот индекс можно создать, выполнив пример, указанный для ProductReview
таблицы в CREATE FULLTEXT INDEX.
А. Получение всех значений Key и DocId
В следующем примере оператор используется DECLARE @local_variable для создания локальной переменной и @table_id
назначения идентификатора ProductReview
таблицы в качестве значения. В примере выполняется sp_fulltext_keymappings
указание @table_id
параметра table_id .
Примечание.
Использование sp_fulltext_keymappings
только с параметром table_id подходит для небольших таблиц.
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
и присваивает ей в качестве значения идентификатор таблицы ProductReview
. В примере выполняется sp_fulltext_keymappings
указание @table_id
параметра table_id для NULL
параметра docId и 4 для параметра ключа .
Примечание.
Использование sp_fulltext_keymappings
только с параметрами table_id , подходящими для небольших таблиц.
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 |