適用対象:SQL Server 2025 (17.x) プレビュー
Azure SQL Database
Azure SQL Managed Instance
Microsoft Fabric Preview の SQL データベース
VECTOR_NORM
を使用して、ベクトルを入力として取得し、指定されたノルム型のベクトル (長さまたは大きさの尺度) のノルムを返します。
たとえば、ユークリッドノルム (最も一般的なノルム型) を計算する場合は、次の値を使用できます。
SELECT VECTOR_NORM ( vector, 'norm2' )
FROM ...
Note
このデータ型はプレビュー段階であり、変更される可能性があります。 Online Services のサービス レベル アグリーメント (SLA) ドキュメントで、プレビューの使用条件をお読みください。
VECTOR_NORM
は、 Always-up-to-date 更新ポリシーで構成された Azure SQL Managed Instance で使用できます。
Syntax
VECTOR_NORM ( vector, norm_type )
Arguments
ベクタ
ベクター データ型に評価される式。
norm_type
指定されたベクトルのノルムの計算に使用するノルム型の名前を持つ文字列。 次の標準型がサポートされています。
-
norm1
- 1 ノルム。ベクトル 成分の絶対値の合計です。 -
norm2
- ベクトル成分の平方和の平方根であるユークリッドノルムとも呼ばれる2ノルム。 -
norminf
- 無限ノルム。これはベクトル成分の絶対値の最大値です。
Return value
この関数は、指定されたノルム型を使用して、ベクトルのノルムを表す 浮動小数点 値を返します。
norm_typeが有効なノルム型でない場合、およびベクターがベクター データ型でない場合は、エラーが返されます。
Examples
Example 1
次の例では、JSON 配列を持つ文字列から 3 次元のベクターを作成します。
DECLARE @v VECTOR(3) = '[1, 2, 3]';
SELECT
vector_norm(@v, 'norm2') AS norm2,
vector_norm(@v, 'norm1') AS norm1,
vector_norm(@v, 'norminf') AS norminf;
期待される戻り値は次のようになります。
norm2 |
norm1 |
norminf |
---|---|---|
3.7416573867739413 | 6.0 | 3.0 |
Example 2
次の例では、テーブル内の各ベクトルのノルムを計算します。
CREATE TABLE dbo.vectors
(
ID INT PRIMARY KEY,
v VECTOR(3) NOT NULL
);
INSERT INTO dbo.vectors (ID, v) VALUES
(1, '[0.1, -2, 42]'),
(2, '[2, 0.1, -42]');
SELECT
ID,
VECTOR_NORM(v, 'norm2') AS norm
FROM
dbo.vectors;