技術 プログラムSQLbigquery [bigquery]時間差分を取得する SELECT -- start_time から end_time までの秒差分を取得 TIMESTAMP_DIFF(TIMESTAMP(end_time), TIMESTAMP(start_time)... 2022-07-25
技術 プログラムSQLbigquery [bigquery]10分単位でレコード集計する SELECT CONCAT(SUBSTR(FORMAT_TIMESTAMP('%Y-%m-%d %H:%M:%S', TIMESTAMP(time), 'Asia/Tokyo'), 0, 15), '... 2022-07-25
技術 プログラムSQLbigquery [biguqery]複数のフラグ項目を一気に判定する方法 SELECT * FROM dataset.table WHERE 1 IN (flg1, flg2, flg3) -- flg1, flg2, flg3 のどれがに1が入っているものを抽出する... 2022-06-11
技術 プログラムSQLbigquery [biguqery]PARTITIONから月初のデータのみ抽出する方法 SELECT * FROM dataset.table WHERE _PARTITIONDATE = DATE_TRUNC(_PARTITIONDATE, MONTH) -- 月初1日目のみ抽出... 2022-06-10
技術 プログラムSQLbigquery [biguqery]PARTITIONから曜日単位のデータのみ抽出する方法 SELECT * FROM dataset.table WHERE _PARTITIONDATE = DATE_TRUNC(_PARTITIONDATE, WEEK(MONDAY)) -- 月曜日のP... 2022-06-10
技術 プログラムSQLbigquery [biguqery]CURRENT_DATE()でJST指定する方法 SELECT DATE_SUB(CURRENT_DATE('Asia/Tokyo'), INTERVAL 1 DAY)... 2022-06-10
技術 プログラムSQLbigquery [bigquery]時間差分を取得する方法 bigqqueryで日時情報が入った2つの項目の差分から、時間差分(xx:xx:xx)を表示する時のサンプルコード SELECT CONCAT ( CAST(DATETIME_DIFF(CAST(en... 2022-05-08
技術 プログラムSQLbigquery [bigquery]繰り返し処理(LOOP)でパーティションテーブルを一気に作成する方法 bigqueryのコンソール上のみでパーティションテーブルを作成して、日付ループ処理を記述することで、過去分のパーティション情報などを一気に作成するコードの紹介をします。 本番環境などでは、pytho... 2022-03-13
技術 SQLbigquery 【bigquery】ランダムサンプリングする方法 bigqqueryでデータをランダムサンプリングするコードメモです。 SELECT * FROM dataset.table WHERE -- 以下を指定することでテーブルの10%のデータをランダムに... 2021-11-30
技術 SQLbigquery 【bigquery】四分位数の求め方 bigqqueryで四分位数を算出するコードがあまりなかったのでメモ投稿です SELECT key , min -- 配列にしたpercent情報からoffsetで割合算出 , percent... 2021-11-29
技術 SQLbigqueryデータ不備 [bigquery]データ不備による抽出失敗例→between編 betweenを利用する項目は日付型にする必要がありますが、文字型の日付データをDATE関数などでCASTしてから利用する場合にハマるときがありましたのでメモ残します。 ▼ between対象項目にn... 2021-09-27
技術 SQLbigquery [bigquery]累積値を算出する SELECT id , date , price -- 累積金額の算出 id単位でdate順に並べ替えて、priceを累積していく , SUM(price) OVER (PARTITION BY id... 2021-09-18