BigQuery の最新の追加機能である PIVOT 関数は、データをよりピボット テーブルに似た形式に変換できる機能として大きな注目を集めています。 。ただし、ピボット列の値が事前にわからないシナリオに直面した場合、従来の方法は効果がないことが判明する可能性があります。
そのような場合、文字列連結を使用した動的アプローチにより、この制限を回避できます。四半期列の個別の値に基づいてピボット クエリを動的に生成することにより、任意の数の未知のピボット値を効果的に処理できます。
次のコード スニペットは、この動的アプローチの例です。
execute immediate ( select '''select * from (select * from `project.dataset.Produce`) pivot(sum(sales) for quarter in ("''' || string_agg(quarter, '", "') || '''")) ''' from (select distinct quarter from `project.dataset.Produce` order by quarter) );
クエリ生成:
サブクエリ:
この動的アプローチには、いくつかの利点があります。
以上がピボット列の値が不明な場合、BigQuery でデータを動的にピボットするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。