Note
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de changer d’annuaire.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de changer d’annuaire.
S’applique à : Base de données SQL Server 2025 (17.x)
Azure SQL Database
Azure SQL Managed Instance
SQL dans Microsoft Fabric
Permet VECTOR_NORM de prendre un vecteur comme entrée et de retourner la norme du vecteur (qui est une mesure de sa longueur ou de sa magnitude) dans un type de norme donné.
Par exemple, si vous souhaitez calculer la norme Euclide (qui est le type de norme le plus courant), vous pouvez utiliser :
SELECT VECTOR_NORM ( vector, 'norm2' )
FROM ...
Note
VECTOR_NORMest disponible dans Azure SQL Managed Instance avec la stratégie de mise à jourSQL Server 2025 ou Always-up-to-date.
Syntax
Conventions de la syntaxe Transact-SQL
VECTOR_NORM ( vector , norm_type )
Arguments
vector
Expression qui prend la valeur du type de données vectorielle .
norm_type
Chaîne portant le nom du type de norme à utiliser pour calculer la norme du vecteur donné. Les types de norme suivants sont pris en charge :
-
norm1- La norme 1, qui est la somme des valeurs absolues des composants vectoriels. -
norm2- La norme 2, également appelée norme euclide, qui est la racine carrée de la somme des carrés des composants vectoriels. -
norminf- Norme d’infini, qui est la valeur maximale des valeurs absolues des composants vectoriels.
Valeur retournée
La fonction retourne une valeur float qui représente la norme du vecteur à l’aide du type de norme spécifié.
Une erreur est retournée si norm_type n’est pas un type de norme valide et si le vecteur n’est pas du type de données vectorielle.
Examples
Exemple 1
L’exemple suivant crée un vecteur avec trois dimensions à partir d’une chaîne avec un tableau JSON.
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;
Les valeurs de retour attendues sont les suivantes :
norm2 |
norm1 |
norminf |
|---|---|---|
| 3.7416573867739413 | 6.0 | 3.0 |
Exemple 2
L’exemple suivant calcule la norme de chaque vecteur dans une table.
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;