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


VECTORPROPERTY (Transact-SQL) (предварительная версия)

Применимо к: SQL Server 2025 (17.x) Предварительная версия Azure SQL DatabaseAzure SQL Managed InstanceБаза данных SQL в Microsoft Fabric Preview

Функция VECTORPROPERTY возвращает определенные свойства заданного вектора. Для функции требуются два аргумента: вектор и свойство, которое требуется извлечь.

Note

Syntax

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

VECTORPROPERTY(vector, property)

Arguments

vector

Допустимый вектор типа вектора . Это может быть выражение, например переменная или ссылка на столбец.

Входной вектор может быть указан как [tablename].[colname] или в качестве допустимой переменной типа вектора .

property

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

Property Description Value Returned
Dimensions Количество измерений вектора возвращаемого объекта Целочисленное значение с числом измерений.
BaseType Базовый тип возвращаемого вектора sysname с именем типа данных.

Базовый тип по умолчанию для векторов в настоящее время имеет значение float (32-разрядная версия).

Return value

Функция возвращает определенные свойства заданного вектора на основе выбранного свойства. For example:

  • Если это свойство Dimensions, функция возвращает целочисленное значение, представляющее число измерений вектора.
  • Если свойство имеется BaseType, функция возвращает имя типа данных (sysname).

Examples

Получение количества измерений

В следующем примере объявите вектор с тремя измерениями и получите его число измерений. Функция VECTORPROPERTY возвращает целочисленное значение 3 , представляющее число измерений.

DECLARE @v AS VECTOR(3) = '[1,2,3]';

SELECT VECTORPROPERTY(@v, 'Dimensions');

Количество возвращаемых измерений

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

CREATE TABLE mytable
(
    id INT IDENTITY NOT NULL PRIMARY KEY,
    embeddings VECTOR(3) NOT NULL
);

INSERT INTO mytable (embeddings)
VALUES ('[4, -2, -1]'),
       ('[1, 3, -5]'),
       ('[7, -8, -10]'),
       ('[4.0, 0.2, -1.1]'),
       ('[0, 0, 0]'),
       ('[10, 10, 10]'),
       ('[-0.1, -0.2, -0.3]');

SELECT VECTORPROPERTY(t.embeddings, 'dimensions')
FROM mytable AS t;

Returns:

Dimensions
----------
3
3
3
3
3
3
3