ARRAY_LENGTH |
Longueur du tableau |
| BigQuery |
Syntaxe
|
ARRAY_LENGTH(array_expression)
|
Paramètres
| Nom |
Description |
| array_expression |
Ce paramètre permet de spécifier le tableau dont vous souhaitez obtenir le nombre d'éléments. |
Description
Cette fonction permet de demander le nombre d'éléments que contient le tableau spécifié.
Remarques
- La fonction ARRAY_LENGTH est essentielle pour connaître la taille d'un tableau (ARRAY) dans BigQuery : Elle retourne un entier (INT64) représentant le
nombre total d'éléments présents dans le tableau, ce qui est utile pour valider la présence de données ou vérifier une condition de longueur.
- Cette fonction retourne zéro si le tableau est vide, et NULL si le tableau fourni est NULL : Cela signifie que ARRAY_LENGTH(NULL) ≠ 0, ce qui est
important à prendre en compte lors du traitement de données potentiellement absentes ou mal initialisées.
- Elle permet d'évaluer dynamiquement la quantité d'éléments d'un tableau sans avoir à l'énumérer manuellement : Dans les pipelines de traitement de
données, cela permet de filtrer ou déclencher des actions en fonction du contenu réel d'un champ tableau.
- La fonction est fréquemment utilisée avec WHERE, CASE ou dans les colonnes calculées pour effectuer des filtrages conditionnels : Par exemple, on peut
écrire WHERE ARRAY_LENGTH(tags) > 2 pour sélectionner uniquement les lignes ayant un tableau de plus de deux éléments.
- Elle est très utile lorsqu'on traite des champs agrégés avec ARRAY_AGG ou concaténés avec ARRAY_CONCAT_AGG, afin d'évaluer le résultat : Cela permet de
savoir si une agrégation a produit un tableau vide, partiel ou très grand, ce qui peut influencer la logique métier ou l'affichage.
- La fonction peut aussi être utilisée en combinaison avec des fonctions comme UNNEST pour calculer des moyennes de tailles ou générer des statistiques
sur des structures de type liste : Par exemple, calculer la moyenne du nombre d'éléments par utilisateur ou par événement est simple avec ARRAY_LENGTH.
- Elle ne prend qu'un seul argument et ne supporte pas les paramètres supplémentaires comme ORDER BY ou LIMIT : Cela la rend simple et directe à
utiliser, mais cela signifie aussi qu'elle n'est pas configurable : toute logique de tri ou de filtrage doit être faite en amont.
- Lorsqu'utilisée sur des tableaux générés à la volée (exemple : ARRAY(SELECT ...)), elle permet de valider immédiatement le contenu retourné par une sous-requête :
C'est une méthode pratique pour déboguer des requêtes complexes ou détecter des erreurs logiques dans l'extraction des données.
Dernière mise à jour : Jeudi, le 18 Juin 2020