Question : Existe-t-il une fonction spécialisée dans PostgreSQL qui fusionne deux tableaux de longueur égale en un bidimensionnel tableau ?
Réponse :
Présentation de array_agg(expression de tableau), un outil puissant qui combine tous les tableaux d'entrée en un seul tableau d’une dimension supérieure. Cette fonction a effectivement remplacé le besoin de fonctions d'agrégation personnalisées telles que array_agg_mult().
Utilisez ROWS FROM ou la fonction améliorée unnest() pour dissocier plusieurs tableaux simultanément. La taille du tableau résultant correspondra au plus grand tableau d'entrée, avec des tableaux plus petits complétés par des valeurs nulles.
Exploitez la fonction unnest() pour créer une fonctionnalité zip() simple qui désemboîte deux tableaux en parallèle. Cette approche fonctionne efficacement tant que les tableaux ont un nombre égal d'éléments.
La combinaison des tableaux non imbriqués dans un tableau bidimensionnel nécessite un fonction d'agrégation comme array_agg_mult(). Cette fonction regroupe des tableaux individuels en un tableau multidimensionnel. Pour utiliser cette fonction pour la fonctionnalité zip(), enveloppez-la dans une fonction distincte,
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!