※当サイトはアフィリエイト広告を利用しています

Bigquery

【サンプルコードあり】SQLでBigqueryのテーブル作成・追記・上書き・削除

ぐぅ

ぐぅ

京大工学部▶︎京大大学院情報学研究科▶︎日系企業のITエンジニア。研究室ではAI×通信の研究も行いAIにも知見あり。友人とプログラミング初学者向けブログ「はやぶさエンジニア」を運営。ノーコードで起業し、サブスク型サービスを運営。26歳大阪在住

★本記事は5分で読み終わることができます。

 Bigquery上でクエリを用いてテーブルを操作する方法を解説しています。

GCPの代表的サービスBigqueryでテーブルに関する便利なクエリを解説します。

SQLだけでBigquery上のテーブルを作成・追記・上書きまでできてしまうので是非覚えてしまいましょう!!

実はテーブルの削除はできず、指定したテーブル内のデータの削除はできるので合わせて確認していきましょう!!

【Bigquery初心者におすすめのUdemy講座】
 BigQuery で学ぶ非エンジニアのための SQL データ分析入門

BigqueryのUdemy講座で最も人気のある講座です。必要なSQLの文法を全てマスターすることができます!!

受講はこちら

テーブルの作成(create)

さっそくですが、テーブルの作成についてみていきましょう。
テーブルの作成では、格納したい変数と変数の型(STRING, INT64, FLOAT, TIMESTAMP,,,)を指定してあげる必要があります。

create table <作成したいテーブル名>
(
変数1 変数1の型, # データの型を指定してあげる
変数2 変数2の型,
変数3 変数3の型
) AS
SELECT
データ 
FROM 
<テーブル名>

具体的な例を見ていきましょう。
フルーツの名前と個数と価格のテーブルがあり、名前と価格だけのテーブルを作成するためには下のSQLのようになります。

/*
データセット名.テーブル名 : food.fruits_table
   fruits  num  price
0  apple    10   100
1  orange   15   300
2  grape    32   860
*/


create table `food.price_table` # ここで作成したいテーブル名を指定してあげる
(
fruits STRING,
price INT64,
) 
AS
SELECT # 必要なデータを取ってくる
fruits,
price 
FROM 
`food.fruits_table`

create tableでテーブル作成を宣言してあげるだけでできてしまいました!!
とても便利な関数なので是非活用してみてください!

SQLの構文がとてもわかりやすくまとめられているUdemy講座があるので受けてみるのもおすすめです!

【Bigquery初心者におすすめのUdemy講座】
 BigQuery で学ぶ非エンジニアのための SQL データ分析入門

BigqueryのUdemy講座で最も人気のある講座です。必要なSQLの文法を全てマスターすることができます!!

受講はこちら

テーブルへの追記(insert into)

続いては、もう既に存在するテーブルに対してデータを追加したい時に便利な関数です。

insert into <追加先のテーブル名>

select 
データ
from
テーブル名

では、具体例とともにみていきましょう!

フルーツのバナナのデータを追加してみましょう!

/*
データセット名.テーブル名 : food.fruits_table
   fruits  num  price
0  apple    10   100
1  orange   15   300
2  grape    32   860
*/

insert into `food.fruits_table` # 追加先のテーブルを指定 

select # 追加したいデータをSELCT分で取得
banana,
20,
150

テーブルの上書き(update)

「もうすでにあるテーブルのデータを書き換えたい!」ってときがあります。

例えば、ある変数のステータスが変更になって時です。

では実際にデータの上書き方法をみていきましょう。
注意点としてはwhere分が必須ということです。データを絞った対象に対して置換をしていきます!!

update <テーブル名>
set 変数 = 変更したい値
where 条件を絞る # where分が必須!

ではでは具体例です。
りんごの価格が高騰したので変更してみようと思います。

/*
データセット名.テーブル名 : food.fruits_table
   fruits  num  price
0  apple    10   100
1  orange   15   300
2  grape    32   860
*/

update `food.fruits_table`
set price = 1000 # 変更したい値をかく
where fruits = "apple" # where分が必須!

このように指定してあげたデータに対して上書きをすることができます!!

データの削除(delete)

記事の冒頭でも書いたように、SQLでテーブルの消去はできません。

ですが、テーブル内のデータの消去はできるので合わせて紹介します!!
重複のデータがある場合にとても便利ですよ!!

delete from <テーブル名>
where 消去したいデータが取得できる条件 # where分は絶対に必須です

では具体例でみていきましょう!
フルーツのオレンジが売れてしまったので、データを消去したい場合です。

/*
データセット名.テーブル名 : food.fruits_table
   fruits  num  price
0  apple    10   100
1  orange   15   300
2  grape    32   860
*/

delete from `food.fruits`
where fruits = "orange" # オレンジだけを指定してあげます

データを消去する時は慎重に行いましょう!

データ消去前にSELECT分で消去したいデータを指定できるWHERE分をしっかりと作ることが大切です!!

まとめ

いかがだったでしょうか?

Bigqueryでは、SQLを駆使すると新たにテーブルを作成したり、既存のテーブルに追記、上書きが可能なのでとても便利です。

GUIで行うよりも覚えてしまえば、時間がかからずできてしまうのでぜひ使ってみてくださいね!

【動画で勉強したい人必見】Bigqueryを学べるUdemy講座3選

本記事は5分で読み終えることができます。【記事の信頼性】京都大学出身の現役ITエンジニアである筆者は日々の業務でBigqueryを活用しています。Bigqueryを知り尽くした筆者がBigqueryを ...

続きを見る

  • この記事を書いた人
ぐぅ

ぐぅ

京大工学部▶︎京大大学院情報学研究科▶︎日系企業のITエンジニア。研究室ではAI×通信の研究も行いAIにも知見あり。友人とプログラミング初学者向けブログ「はやぶさエンジニア」を運営。ノーコードで起業し、サブスク型サービスを運営。26歳大阪在住

-Bigquery
-, ,

© 2024 はやぶさエンジニア Powered by AFFINGER5