Ескертпе
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Жүйеге кіруді немесе каталогтарды өзгертуді байқап көруге болады.
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Каталогтарды өзгертуді байқап көруге болады.
Область применения: SQL Server
Возвращает таблицу с нулем, одной или несколькими строками для ключевых фраз, связанных с указанными столбцами в заданной таблице.
На эту функцию набора строк можно ссылаться из предложения FROM инструкции SELECT так же, как и на обычное имя таблицы.
Соглашения о синтаксисе Transact-SQL
Синтаксис
SEMANTICKEYPHRASETABLE
(
table,
{ column | (column_list) | * }
[ , source_key ]
)
Аргументы
table
Имя таблицы с включенным полнотекстовым и семантическим индексированием.
Это имя может содержать от одной до четырех частей, но указать имя удаленного сервера невозможно.
column
Имя индексированного столбца, для которого должны быть возвращены результаты. У столбца должно быть включено семантическое индексирование.
column_list
Задает несколько столбцов, разделенных запятыми и заключенных в круглые скобки. У всех столбцов должно быть включено семантическое индексирование.
*
Указывает на то, что используются все столбцы, у которых включено семантическое индексирование.
source_key
Уникальный ключ строки для запроса результатов по определенной строке.
По возможности ключ неявно преобразуется в тип полнотекстового уникального ключа в исходной таблице. Ключ может быть задан в виде константы или переменной, но не может быть выражением или результатом скалярного вложенного запроса. Если параметр source_key не указан, то результаты возвращаются для всех строк.
Возвращаемая таблица
В следующей таблице приведены сведения о ключевых фразах, которые возвращает эта функция набора строк.
| Column_name | Тип | Описание |
|---|---|---|
| column_id | int | Идентификатор столбца, из которого была извлечена и проиндексирована текущая ключевая фраза. Способы извлечения имени столбца по идентификатору столбца и идентификатора столбца по имени см. в описании функций COL_NAME и COLUMNPROPERTY. |
| document_key | * Этот ключ соответствует типу уникального ключа в исходной таблице. |
Значение уникального ключа документа или строки, в которых была проиндексирована текущая ключевая фраза. |
| keyphrase | NVARCHAR | Ключевая фраза из столбца с идентификатором column_id, связанная с документом, указанным document_key. |
| score | REAL | Относительное значение для этой ключевой фразы относительно всех других ключевых фраз того же документа в индексируемом столбце. Это дробное десятичное значение в диапазоне [0.0, 1.0], где более высокие значения соответствуют большему весу, а 1.0 — показатель идеального совпадения. |
Общие замечания
Дополнительные сведения см. в статье "Поиск ключевых фраз" в документах с семантической поиском.
Метаданные
Чтобы получить сведения об извлечении семантической ключевой фразы и о заполнении, запросите следующие динамические административные представления:
Безопасность
Разрешения
Требуется разрешение SELECT на базовую таблицу, в которой были созданы индекс полнотекстового поиска и семантический индекс.
Примеры
Пример 1. Поиск наиболее важных ключевых фраз в определенном документе
В следующем примере извлекаются 10 первых ключевых фраз из документа, указанного в переменной @DocumentId в столбце Document таблицы Production.Document в тестовой базе данных AdventureWorks. Переменная @DocumentId представляет значение из ключевого столбца полнотекстового индекса. Функция SEMANTICKEYPHRASETABLE эффективно извлекает эти результаты поиском по индексу, а не путем просмотра таблицы. В этом примере предполагается, что в столбце настроено семантическое и полнотекстовое индексирование.
SELECT TOP(10) KEYP_TBL.keyphrase
FROM SEMANTICKEYPHRASETABLE
(
Production.Document,
Document,
@DocumentId
) AS KEYP_TBL
ORDER BY KEYP_TBL.score DESC;
Пример 2. Поиск наиболее важных документов, содержащих определенную ключевую фразу
В следующем примере извлекаются 25 первых документов, содержащих ключевую фразу Bracket в столбце Document таблицы Production.Document примера базы данных AdventureWorks. В этом примере предполагается, что в столбце настроено семантическое и полнотекстовое индексирование.
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;