コンテンツにスキップ

GCP環境構築-BigQuery-テーブル・View

テーブル作成

bq_3

①作成したデータセット"ja_ds"を選択
②「クエリを新規作成」をクリック
③クエリ入力欄に、下記SQLをペースト

create table ja_ds.rfid (
    gateway_id STRING NOT NULL,
    polling_timestamp TIMESTAMP NOT NULL,
    receive_timestamp TIMESTAMP,
    tag_type STRING,
    ant STRING NOT NULL,
    tsp STRING,
    rep STRING,
    rssi STRING NOT NULL,
    crc STRING,
    pc STRING,
    epc STRING NOT NULL,
    xaxis NUMERIC,
    yaxis NUMERIC,
    zaxis NUMERIC,
    resv NUMERIC
);

create table ja_ds.rfid_raw (
    gateway_id STRING NOT NULL,
    polling_timestamp TIMESTAMP,
    raw_json STRING
);

④「実行」をクリック

bq_4

データセット"ja_ds"配下に、テーブルが2つ作成されていることを確認


View作成

bq_5

テーブル作成時と同じ手順で、クエリ入力欄に下記テキストをペースト、実行

create view ja_ds.v_rfid_accel as
  SELECT
  gateway_id,
  epc,
  pc,
  concat(pc,'-',epc) as pc_epc,
  xaxis,
  yaxis,
  zaxis,
  resv as stdev,
  sqrt(pow(xaxis,2)+pow(yaxis,2)+pow(zaxis,2)) as abs_acc,
  FORMAT_TIMESTAMP('%Y-%m-%d %H:%M:%S', polling_timestamp, 'Asia/Tokyo') as polling_ts_jst,
  FORMAT_TIMESTAMP('%Y-%m-%d %H:%M:%S', receive_timestamp, 'Asia/Tokyo') as receive_ts_jst,
  FORMAT_TIMESTAMP('%Y-%m-%d', receive_timestamp, 'Asia/Tokyo') as receive_dt_jst,
  FORMAT_TIMESTAMP('%H', receive_timestamp, 'Asia/Tokyo') as receive_hour_jst,
  receive_timestamp
  FROM `ja_ds.rfid`
  WHERE xaxis is not null;

create view ja_ds.v_rfid_tag_list as
  SELECT DISTINCT
  concat(pc,'-',epc) as pc_epc,
  polling_timestamp,
  FORMAT_TIMESTAMP('%Y-%m-%d', polling_timestamp, 'Asia/Tokyo') as polling_dt_jst
  FROM `ja_ds.rfid`;



bq_6

データセット"ja_ds"配下に、Viewが作成されていることを確認

※使用したクエリのテキストは、保存せずに終了してください。


以上でテーブル・View作成は完了です。

Back to top