Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Si applica a: Sql Server 2025 (17.x)
Database
SQL di Azure Istanza
gestita di SQL di Azurein Microsoft Fabric
Usare VECTOR_NORM per accettare un vettore come input e restituire la norma del vettore (che è una misura della sua lunghezza o grandezza) in un determinato tipo di norma.
Ad esempio, se si desidera calcolare la norma euclidea (che è il tipo di norma più comune), è possibile usare:
SELECT VECTOR_NORM ( vector, 'norm2' )
FROM ...
Note
VECTOR_NORMè disponibile in Istanza gestita di SQL di Azure con i criteri di aggiornamento di SQL Server 2025 o Always-up-to-date.
Syntax
Convenzioni relative alla sintassi Transact-SQL
VECTOR_NORM ( vector , norm_type )
Arguments
vector
Espressione che restituisce il tipo di dati vector .
norm_type
Stringa con il nome del tipo di norma da utilizzare per calcolare la norma del vettore specificato. Sono supportati i tipi di norma seguenti:
-
norm1- La norma 1, ovvero la somma dei valori assoluti dei componenti vettoriali. -
norm2- La norma 2, nota anche come Norm euclidea, che è la radice quadrata della somma dei quadrati dei componenti vettoriali. -
norminf- Norma infinito, ovvero il massimo dei valori assoluti dei componenti vettoriali.
Valore restituito
La funzione restituisce un valore float che rappresenta la norma del vettore usando il tipo di norma specificato.
Viene restituito un errore se norm_type non è un tipo di norma valido e se il vettore non è del tipo di dati vector.
Examples
Esempio 1
L'esempio seguente crea un vettore con tre dimensioni da una stringa con una matrice 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;
I valori restituiti previsti sono:
norm2 |
norm1 |
norminf |
|---|---|---|
| 3.7416573867739413 | 6.0 | 3.0 |
Esempio 2
Nell'esempio seguente viene calcolata la norma di ogni vettore in una tabella.
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;