ホームページ > データベース > mysql チュートリアル > 列の値を事前に知らなくても、BigQuery でデータを動的にピボットするにはどうすればよいですか?

列の値を事前に知らなくても、BigQuery でデータを動的にピボットするにはどうすればよいですか?

Barbara Streisand
リリース: 2025-01-04 17:03:41
オリジナル
227 人が閲覧しました

How Can I Dynamically Pivot Data in BigQuery Without Knowing the Column Values in Advance?

BigQuery で PIVOT を動的に使用する

BigQuery の新しい PIVOT 関数を使用すると、グループの複数の値を個別に集計してデータを変換できます

問題:

実際のシナリオでは、四半期の値が事前にわからない場合があります。ハードコーディングされた四半期値を使用して静的 PIVOT クエリを実行することは不可能になります。

解決策:

未知の四半期値を動的に処理するには、次のアプローチを使用できます。

  1. 個別の四半期を取得するサブクエリを作成する値:
(SELECT DISTINCT quarter FROM `project.dataset.Produce` ORDER BY quarter)
ログイン後にコピー
  1. STRING_AGG を使用して動的ピボット列リストを生成します:
STRING_AGG(quarter, '", "')
ログイン後にコピー
  1. 即時実行してビルドする動的にピボット クエリを実行:
EXECUTE IMMEDIATE (
  'SELECT * FROM (SELECT * FROM `project.dataset.Produce`)
  PIVOT(SUM(sales) FOR quarter IN (' || STRING_AGG(quarter, '", "') || '"))'
)
ログイン後にコピー

この方法では、個別の四半期値に基づいてピボット列リストを動的に構築することで、四半期範囲を事前に決定する必要がなく、柔軟な PIVOT 操作が可能になります。

以上が列の値を事前に知らなくても、BigQuery でデータを動的にピボットするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート