Поделиться через


semanticsimilaritytable (Transact-SQL)

Область применения:SQL Server

Возвращает таблицу, состоящую из нуля, одной или более строк для документов, содержимое которых в указанных столбцах семантически сходно с содержимым указанного документа.

Эту функцию набора строк можно ссылать в FROM предложении инструкции SELECT , например обычное имя таблицы.

Соглашения о синтаксисе Transact-SQL

Syntax

SEMANTICSIMILARITYTABLE
    (
      table
      , { column | (column_list) | * }
      , source_key
    )

Arguments

table

Имя таблицы с поддержкой полнотекстового и семантического индексирования.

Это имя может быть одним и четырьмя именами частей, но имя удаленного сервера не разрешено.

column

Имя индексированного столбца, для которого должны быть возвращены результаты. У столбца должно быть включено семантическое индексирование.

column_list

Задает несколько столбцов, разделенных запятыми и заключенных в круглые скобки. У всех столбцов должно быть включено семантическое индексирование.

*

Указывает на то, что используются все столбцы, у которых включено семантическое индексирование.

source_key

Уникальный ключ строки для запроса результатов по определенной строке.

По возможности ключ неявно преобразуется в тип полнотекстового уникального ключа в исходной таблице. Ключ можно указать как константу или переменную, но не может быть выражением или результатом скалярного подзапроса.

Table returned

В следующей таблице приведены сведения о сходных или связанных документах, которые возвращает эта функция набора строк.

Если результаты запрашиваются из нескольких столбцов, то совпадающие документы возвращаются для каждого столбца отдельно.

Column name Type Description
source_column_id 1 int Идентификатор столбца, в котором исходный документ использовался при поиске подобных документов.
matched_column_id 1 int Идентификатор столбца, в котором был найден сходный документ.
matched_document_key *

Этот ключ соответствует типу уникального ключа в исходной таблице.
Значение уникального ключа полнотекстового и семантического извлечения для документа или строки, которые оказались подобными документу, указанному в запросе.
score real Относительное значение подобия этого документа по отношению ко всем другим подобным документам. Значение является дробным десятичным значением в диапазоне [0.0, 1.0], где более высокая оценка представляет более близкое совпадение, и 1.0 является идеальным показателем.

1 См. функции COL_NAME и COLUMNPROPERTY для получения сведений о том, как получить имя столбца из column_id и наоборот.

Remarks

Дополнительные сведения см. в статье "Поиск похожих и связанных документов с семантической поиском".

Limitations

Вы не можете запрашивать столбцы для аналогичных документов. Функция SEMANTICSIMILARITYTABLE получает только аналогичные документы из того же столбца, что и исходный столбец, который определяется аргументом source_key .

Metadata

Чтобы получить сведения и состояние извлечения и заполнения данных о семантическом подобии, выполните запрос к следующим динамическим административным представлениям:

Permissions

Требуется SELECT разрешение на базовую таблицу, в которой были созданы полнотекстовые и семантические индексы.

Examples

В следующем примере извлекаются первые 10 кандидатов, которые похожи на указанного кандидата из HumanResources.JobCandidate таблицы в образце AdventureWorks2022 базы данных.

SELECT TOP (10) KEY_TBL.matched_document_key AS Candidate_ID
FROM SEMANTICSIMILARITYTABLE (HumanResources.JobCandidate, Resume, @CandidateID) AS KEY_TBL
ORDER BY KEY_TBL.score DESC;