Maison >base de données >tutoriel mysql >Comment puis-je annuler le pivotement des tableaux dans BigQuery pour transformer des lignes en colonnes ?
Tableaux non pivotants dans BigQuery
La restructuration d'une table pour transformer des lignes en colonnes est une tâche courante de manipulation de données. Dans BigQuery, ce processus est appelé non-pivot.
Énoncé du problème :
Supposons que vous ayez une table avec des données organisées dans un format similaire au suivant :
Cependant, la table de sortie souhaitée doit être structurée comme ceci :
Solution :
Pour réaliser cette transformation, vous pouvez utiliser l'opérateur UNPIVOT dans BigQuery. Cet opérateur fait pivoter les lignes en colonnes, vous permettant de remodeler votre table selon vos besoins.
Solution mise à jour (2021) :
BigQuery a introduit un opérateur UNPIVOT dédié pour simplifier cela. processus. L'utilisation d'UNPIVOT peut être représentée comme suit :
SELECT product, sales, quarter FROM ( SELECT product, UNNEST([Q1, Q2, Q3, Q4]) AS sales, UNNEST(["Q1", "Q2", "Q3", "Q4"]) AS quarter FROM UNNEST(sales_table) AS sales_table )
Cette requête annule le pivotement des colonnes Q1, Q2, Q3, Q4 dans de nouvelles colonnes ventes et trimestre. L'opérateur UNNEST est utilisé pour extraire les valeurs du champ de tableau imbriqué sales_table.
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!