- Catégories :
Fonctions de données semi-structurées et structurées (tableau/objet)
ARRAY_COMPACT¶
Renvoie un tableau compacté avec les valeurs manquantes et « null » supprimées, convertissant efficacement les tableaux clairsemés en tableaux denses.
Syntaxe¶
ARRAY_COMPACT( <array1> )
Arguments¶
array1
Le tableau source.
Notes sur l’utilisation¶
Les données semi-structurées (exemple : données JSON) peuvent contenir des valeurs nulles explicites, distinctes des NULLs SQL. Une valeur nulle dans les données semi-structurées indique qu’il manque une valeur.
array1
doit être un type de données ARRAY ou un type de données VARIANT contenant une valeur de tableau.Si l’argument est NULL, le résultat sera NULL.
Lorsque vous transmettez un ARRAY structuré à la fonction, celle-ci renvoie un ARRAY structuré du même type.
Exemples¶
Cet exemple montre comment utiliser ARRAY_COMPACT()
:
Créez une table et des données simples :
CREATE TABLE array_demo (ID INTEGER, array1 ARRAY, array2 ARRAY);INSERT INTO array_demo (ID, array1, array2) SELECT 2, ARRAY_CONSTRUCT(10, NULL, 30), ARRAY_CONSTRUCT(40);Exécutez la requête :
SELECT array1, ARRAY_COMPACT(array1) FROM array_demo WHERE ID = 2; +--------------+-----------------------+ | ARRAY1 | ARRAY_COMPACT(ARRAY1) | |--------------+-----------------------| | [ | [ | | 10, | 10, | | undefined, | 30 | | 30 | ] | | ] | | +--------------+-----------------------+