Catégories :

Vector functions

VECTOR_TRUNCATE

Tronque un VECTOR en une dimension plus petite.

Cette fonction peut aussi être appelée par l’alias VECTOR_TRUNC.

Voir aussi :

Intégrations vectorielles, VECTOR_NORMALIZE

Syntaxe

VECTOR_TRUNCATE( <vector>, <dimension> )
Copy

Arguments

vector

Une seule valeur VECTOR à tronquer.

dimension

Le nombre d’éléments qui doivent être dans le vecteur renvoyé.

Renvoie

Renvoie une valeur VECTOR avec les mêmes valeurs et types pour les premières entrées dimension, le reste étant ignoré.

Notes sur l’utilisation

  • Renvoie NULL lorsqu’une entrée est NULL.

  • Utiliser un dimension plus grand que le nombre de dimensions dans vector provoque une erreur.

  • Les vecteurs tronqués ne sont pas normalisés.

Exemples

Cet exemple illustre la troncature d’un vecteur à 3 dimensions en un vecteur à 2 dimensions :

SELECT VECTOR_TRUNCATE([1, 2, 3]::VECTOR(INT, 3), 2);
Copy
[1,2]

Cet exemple illustre la troncature d’un vecteur produit par EMBED_TEXT_768 pour le texte « Les bases de données analytiques sont généralement orientées colonnes plutôt que lignes » avec le modèle snowflake-arctic-embed-m-v1.5 de 768 éléments à 256 éléments :

SELECT VECTOR_TRUNCATE(
    SNOWFLAKE.CORTEX.EMBED_TEXT_768(
        'snowflake-arctic-embed-m-v1.5',
        'Analytical databases are typically column-oriented rather than row-oriented'
    ),
    256)
;
Copy