ホームページ >データベース >mysql チュートリアル >BigQuery でテーブルのピボットを解除して行を列に変換するにはどうすればよいですか?
BigQuery でのテーブルのアンピボット
テーブルを再構築して行を列に変換することは、一般的なデータ操作タスクです。 BigQuery では、このプロセスはアンピボットとして知られています。
問題ステートメント:
次のような形式でデータが編成されたテーブルがあるとします。
ただし、必要な出力テーブルは次のように構成されている必要があります:
解決策:
この変換を実現するには、BigQuery の UNPIVOT 演算子を利用できます。この演算子は行を列に回転させ、必要に応じてテーブルの形状を変更できるようにします。
更新されたソリューション (2021):
BigQuery では、これを簡素化するために専用の UNPIVOT 演算子が導入されました。プロセス。 UNPIVOT の使用は、次のように表すことができます:
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 )
このクエリは、列 Q1、Q2、Q3、Q4 をアンピボットして、新しい列 sales と四半期にします。 UNNEST 演算子は、ネストされた配列フィールド sales_table.
から値を抽出するために使用されます。以上がBigQuery でテーブルのピボットを解除して行を列に変換するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。