dak ブログ

python、rubyなどのプログラミング、MySQL、サーバーの設定などの備忘録。レゴの写真も。

BigQuery で array<struct<...>> にデータを登録する方法

2022-06-28 23:50:53 | GCP
BigQuery で array<struct<...>> のフィールドにデータを登録する方法のメモ。
■テーブル定義
create table `items` (
  item_id      string,
  store_id     string,
  stock        integer
);

create table `item_store_infos` (
  item_id          string,
  store_infos      array<
    struct<
      store_id     string,
      stock        integer
    >
  >
);

■登録
items テーブルから items_store_info テーブルにデータを登録。
insert into
  `item_store_infos`
(item_id, store_infos)
select
  item_id
  , store_infos
from (
  select
    item_id
    , array_agg(store_info) as store_infos
  from (
      select item_id, struct(store_id, stock) as store_info from `itmes`
  ) s
  group by
    item_id
);



この記事についてブログを書く
« MySQL の datetime でミリ秒... | トップ | unittest での Flask のテスト »

GCP」カテゴリの最新記事