【BigQuery】INSERTクエリでデータを追加しよう!使い方を紹介

BigQuery_INSERT_INTOクエリ クラウドプラットフォーム

BigQueryはいくつかの方法でテーブルにデータを入れられます.

  • CSV
  • GCSなど

ただこれらの方法はちょっと準備するのが面倒です.データの数が少ないと準備のほうが時間がかかるでしょう.簡単に追加できる方法としてINSERT INTOクエリが挙げられます.

今回はINSERT INTOクエリを使ってテーブルにデータを入れる方法を紹介します.

INSERT INTO の概要

テーブルにレコードを追加するときは INSERT INTOクエリを使います.

INSERT INTO `テーブル名` (カラム1, カラム2...)
VALUES (カラム1に入るデータ, カラム2に入るデータ, ...),
       (カラム1に入るデータ, カラム2に入るデータ, ...);

このクエリは2つの処理から構成されています.

1つ目は INSERT INTOの行の処理.
この処理ではデータを追加するテーブルとカラムを指定します.

INSERT INTOの後ろにはテーブル名とそのテーブルが持つカラムを記述しましょう.

2つ目は VALUES以降の処理.
ここではカラムに入れるデータを記述します.

カラムとデータは記述順が対応しています.適切なカラムにデータを入れられるように並び順は注意しましょう!

INSERT INTOクエリの使い方

空のテーブルを用意しました.(テーブル名:dev-brain-muscle-engineer.test.20231028_training_menu
このテーブルに10月28日のトレーニングメニューを追加します.

空のテーブル|クリックして拡大できます

INSERT INTOクエリを使ってレコードを追加しましょう!
この日は背中と下半身を鍛えるメニューを取り組みました.

SQLを記述し実行する|クリックして拡大できます
INSERT INTO `dev-brain-muscle-engineer.test.20231028_training_menu` (menu, part)
VALUES ('デッドリフト', '背中'),
       ('ラットプルダウン', '背中'),
       ('スクワット', '下半身');

クエリを実行したのでテーブルの中身を確認します.

プレビュー|クリックして拡大できます

VALUESのデータがテーブルにちゃんと入っていますね.

このクエリは追加するデータ数が少ないときに有効でしょう!
検証用にデータを追加したいときに使うのがちょうどよいと思いました.

もっとレコード数が多いときはCSVからテーブルに入れるのが簡単です.

まとめ

今回はBigQueryでテーブルにレコードを追加する方法を紹介しました.

テーブルにデータを入れる方法はいくつかあります.
その中でINSERT INTOクエリはデータ数が少ないときに使うと効率的だと思いました.

データ数が2,3行しかない場合だとCSVを作る方が時間がかかってしまいます.

BigQueryのテーブルにデータを追加する方法を複数種類知っておくと役立つでしょう!

https://cloud.google.com/blog/ja/products/data-analytics/bigquery-explained-data-manipulation-dml