다음을 통해 공유


VECTOR_NORM(Transact-SQL)

적용 대상:Microsoft Fabric Preview에서 SQL Server 2025(17.x) 미리 보기 Azure SQL DatabaseAzure SQL Managed Instance SQL 데이터베이스

벡터를 입력으로 사용하고 지정된 norm VECTOR_NORM에서 벡터의 표준(길이 또는 크기의 측정값)을 반환하는 데 사용합니다.

예를 들어 유클리드 표준(가장 일반적인 표준 형식)을 계산하려는 경우 다음을 사용할 수 있습니다.

SELECT VECTOR_NORM ( vector, 'norm2' )
FROM ...

Note

VECTOR_NORMSQL Server 2025 또는 Always-up-to-date업데이트 정책을 사용하여 Azure SQL Managed Instance에서 사용할 수 있습니다.

Syntax

Transact-SQL 구문 표기 규칙

VECTOR_NORM ( vector , norm_type )

Arguments

vector

벡터 데이터 형식으로 계산되는 식입니다.

norm_type

지정된 벡터의 norm을 계산하는 데 사용할 norm 형식의 이름을 가진 문자열입니다. 지원되는 표준 형식은 다음과 같습니다.

  • norm1 - 벡터 구성 요소의 절대값 합계인 1-norm입니다.
  • norm2 - 벡터 구성 요소의 제곱 합계의 제곱근인 Euclidean Norm이라고도 하는 2-norm입니다.
  • norminf - 벡터 구성 요소의 절대 값의 최대값인 무한대 표준입니다.

반환 값

이 함수는 지정된 norm 형식을 사용하여 벡터의 norm을 나타내는 부동 소수 자릿수 값을 반환합니다.

norm_type 유효한 표준 형식이 아니고 벡터가 벡터 데이터 형식이 아닌 경우 오류가 반환됩니다.

Examples

예제 1

다음 예제에서는 JSON 배열이 있는 문자열에서 3차원으로 벡터를 만듭니다.

DECLARE @v AS 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

예제 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;