Treasure Data

Treasure Data(トレジャーデータ)でよく使う関数9選[presto]

はじめに

Treasure Dataを普通のSQL感覚で使うと何かとエラー起きがちで大変ですよね、、
今回はそんな私の実体験からTreasure Data(以下、TDと呼ぶ)でよく使う関数をまとめてみました。
では、早速みていきましょー!!✨

Treasure Data(トレジャーデータ)でよく使う関数

①「TD_DATE_TRUNC」unixtimeを指定した日付型に丸める
↓TD特有の「time」を日付(日本時間)で丸めた

TD_DATE_TRUNC('day', time, 'JST') 

②「TD_TIME_RANGE」条件式で日付の範囲を決定する
↓TD特有の「time」で日付を2020-05-01から2020-05-31(日本時間)で絞った

WHERE TD_TIME_RANGE(time, '2020-05-01', '2020-05-31', 'JST')

③「APPROX_DISTINCT」TD特有のDISTINCT関数(正確な値ではなく推定値)
↓店舗毎のUU数を重複なしでカウント(高精度の推定)する。OVER句は無くても良い。

APPROX_DISTINCT(user_id) OVER(PARTITION BY shop_name)

④「CAST(x AS DOUBLE)」TDで小数の計算を行う
↓ユーザー数÷店舗数を小数点以下まで求める

CAST(user_num AS DOUBLE)/shop_num
->CAST(user_num / shop_num AS DOUBLE)とすると整数が返ってくることがあるので注意。

⑤「STRPOS」特定の文字が出現する位置を調べる
↓STRPOS(‘文字列’, ‘文字’)

STRPOS('Treasure Data', 'sure')
->5

⑥「LAG」n日前の値を持ってくる
↓前日のUU数を店舗毎に計算

LAG(sum_user) OVER(PARTITION BY shop_name ORDER BY date)

⑦「TD_TIME_PARSE」文字列型で定義されている時間をunixtimeに変換
↓2020-05-04 07:32:33を日本時間unixtimeに変換

TD_TIME_PARSE('2020-05-04 07:32:33', 'JST')
->1588545153

⑧「TD_TIME_FORMAT」unixtimeを日付の文字列に変換
↓unixtimeを日本時間に変換

TD_TIME_FORMAT(1588545153, 'yyyy-MM-dd HH:mm:ss', 'JST')
->2020-05-04 07:32:33

⑨「TD_TIME_ADD」unixtime/文字列日時で時間/日付を進める
↓unixtimeを日本時間に変換して1時間進める

TD_TIME_ADD(1588545153, '1h', 'JST')
->2020-05-04 08:32:33

おわりに

いかがでしたでしょうか。
この記事を通して、TDに関する理解を深めていただければ幸いです。
最後まで目を通していただきありがとうございました🙇‍♂️

ピックアップ記事

  1. 最速で理解したい人のためのIT用語集

関連記事

  1. Google BigQuery

    Treasure DataからBigQueryにデータを移動させる方法

    こんにちは、エクスチュアの酒井です。今回は、TreasureDat…

  2. Tableau

    TableauでTreasure Data上のデータへ接続する方法(2019/10/02時点)

    ※こちらの記事は過去の手順です。新しい手順についてはこちらの記事を参…

  3. Tableau

    TableauでTreasure Data上のデータへ接続する方法(2023/03/20時点)

    こんにちは、エクスチュアの松村です。エクスチュアブログでの人…

コメント

  1. この記事へのコメントはありません。

  1. この記事へのトラックバックはありません。

CAPTCHA


最近の記事

  1. Snowflakeとは?Data Cloud World T…
  2. SnowflakeのData Clean Roomを基礎から…
  3. SnowflakeのData Clean Roomを基礎から…
  4. SnowflakeのData Clean Roomを基礎から…
  5. SnowflakeのData Clean Roomを基礎から…
  1. Cloud Dataflow

    データアナリスト/データエンジニア向けNext19まとめ
  2. Adobe Analytics

    検索エンジン-有料とは-Adobe Analyticsの指標説明
  3. Adobe Analytics

    GTMのdataLayerをAdobeAnalyticsの「s」オブジェクトにコ…
  4. Mouseflow

    訪問者の不満を見つける
  5. Google Analytics

    Google Analytics: ユニバーサルアナリティクスの拡張Eコマース用…
PAGE TOP