技術 SQLPrestoトレジャーデータ [トレジャーデータ]PRESTOで基準日をベースにして日付操作を行う SELECT target_date , CAST(target_date AS timestamp) -- timestamp型に変換 , DATE_ADD('hour' , 9 , CAST(ta... 2021-07-08
技術 SQLPrestoトレジャーデータ [トレジャーデータ]PRESTOでVARCHARの日付項目を日付型変換して、差分を取得する SELECT -- VARCHAR→日付型へ DATE_PARSE(start_date,'%Y/%m/%d') AS start_date , DATE_PARSE(end_date,'%Y/%m/... 2021-07-08
技術 SQLPrestoトレジャーデータ [トレジャーデータ ]PRESTOで曜日指定してデータを取得する SELECT * FROM table1 WHERE -- # 毎週日曜日のデータを取得 # 1:月/ 2:火 / 3:水 / 4;木 / 5:金 / 6:土 / 7:日 DAY_OF_WEEK(DA... 2021-07-05
技術 SQLPrestoトレジャーデータWindow関数 [トレジャーデータ ]PRESTOで指定項目ごとに連番を設定する コード例 -- 以下ではid毎に連番をつける、その際にid, typeで並び替えてから連番をつける SELECT id , type , ROW_NUMBER() OVER( PARTITION BY... 2021-07-05
技術 SQLPrestoトレジャーデータ [トレジャーデータ ]jsonデータの抽出コード -- JSON形式で保存されたデータ(json_info)からデータを抽出するサンプルコード SELECT json_info , JSON_EXTRACT_SCALAR(json_info, '$... 2020-03-04
技術 プログラムSQLPrestoWindow関数 【トレジャーデータ】PRESTOで累積和を算出する 日別、商品別での価格とその累積和を取得するSQL SELECT target_date , shohin_id , price , SUM(price) OVER (PARTITION BY shoh... 2019-08-23
技術 プログラムSQLPresto 【トレジャーデータ】prestoでgroup by時に対象項目以外を抽出する方法 他のSQLでは利用できないが、PRESTOで使えるナイスなUDFです。 -- shohin_idでgroup byしつつ、group by されたshohin_idの shohin_nameも取得する... 2019-08-05
技術 プログラムSQLPresto 【トレジャーデータ】PRESTOにおけるパフォーマンスチューニングメモ 大量データの処理を行う場合などで処理効率を上げるのに使うコードを書いていきます。 SMART_DIGEST() : 文字列を短いハッシュ値に変えるUDF。数値型ではなく文字列型でのJOINを行う際には... 2019-07-17
技術 プログラムSQLPresto 【トレジャーデータ】PRESTOで差集合を取得する -- 差集合の取得 idを基準にして、 table1に存在して、table2に存在しないレコードを取得 SELECT id FROM table1 EXCEPT SELECT id FROM tabl... 2019-07-17
技術 プログラムSQLPrestoWindow関数 【トレジャーデータ】対象レコードの前後のレコードから値を取得する方法 対象レコードより前のレコード値を取得する(LAG関数) SELECT target_date , item_cd , price, -- 第2引数で遡るステップ数を指定 ここでは2つ前のレコードのpr... 2019-06-12
技術 プログラムSQLPrestoWindow関数 【トレジャーデータ】PRESTOでN日間の移動平均を求める方法 Window関数を使って、直近7日間の平均売上を算出する。 SELECT target_date , item_cd , price , AVG(price) OVER (PARTITION BY i... 2019-06-12
技術 プログラムSQLスプレッドシート 【スプレッドシート】Query関数でSQLと同じ抽出や変換が出来る これを使えば、スプレッドシートで色々楽ができる。 特に集計関数を使って、同一項目の存在数をCOUNTするのはよく使う。 ここがおすすめ... 2019-03-29