16.20 - TD_TIME_BUCKET_NUMBER - Teradata Vantage NewSQL Engine

Teradata Vantage™ 時系列テーブルおよび操作

prodname
Teradata Database
Teradata Vantage NewSQL Engine
vrm_release
16.20
category
プログラミング リファレンス
featnum
B035-1208-162K-JPN

目的

TD_TIME_BUCKET_NUMBERシステム関数は、タイムバケット番号を計算します。HASHROW、HASHBUCKET、またはHASHAMP関数とともにこの関数を使用すると、時系列の行がシステム全体にどのように分散されているかを確認できます。他の用途としては次のようなものがあります。
  • GROUP BY TIME操作でどの候補行をどのバケットに割り当てるかを決定します
  • GROUP BY TIME操作以外の行にバケット番号を割り当てる場合は、結合で結果を使用するか、またはテーブルに挿入します。

構文



構文要素

TD_SYSFNLIB
関数が格納されているデータベースの名前。
timezero

この関数のタイム ゼロとして使用されるDATEまたはTIMESTAMPを評価する任意の式。タイムスタンプのタイムゾーンはオプションです。

timecode
この関数のタイムコードとして使用されるDATEまたはTIMESTAMPを評価する任意の式。タイムスタンプのタイムゾーンはオプションです。
timebucket duration
図に示されている時間単位のいずれかを使用して指定できる継続時間。期間には略語を使用できます。
時間単位 正式なフォームの例 省略表記
暦年 CAL_YEARS(4) 4cy

4cyear

4cyears
暦月 CAL_MONTHS(5) 5cm

5cmonth

5cmonths
暦日

タイム ゼロで特定された日の00:00:00.000000に始まり、23:59:59.999999に終わる24時間の期間。

CAL_DAYS(6) 6cd

6cday

6cdays
WEEKS(3) 3w

3week

3weeks

タイム ゼロから始まる24時間の期間。

DAYS(5) 5d

5day

5days
時間 HOURS(4) 4h

4hr

4hrs

4hour

4hours
MINUTES(23) 23m

23mins

23minute

23minutes
SECONDS(33) 33s

33sec

33secs

33second

33seconds
ミリ秒 MILLISECONDS(12) 12ms

12msec

12msecs

12millisecond

12milliseconds
マイクロ秒 MICROSECONDS(10) 10us

10usec

10usecs

10microsecond

10microseconds
pos_int
最大値が32767の16ビットの正の整数。

戻り値

この関数の戻り型はBIGINTです。

使用上の注意

この関数は、システム関数呼び出しが有効なSQLリクエストで参照できます。

例: タイム バケット番号を計算するためのTD_TIME_BUCKET_NUMBERの使用

SELECT
TD_TIMECODE,
TD_TIME_BUCKET_NUMBER(DATE '1900-01-01', TD_TIMECODE, CAL_YEARS(10)) FROM
ts_group_by_time_tb
WHERE id = 0
ORDER BY 2;
                                                       
TD_TIMECODE                    TD_TIME_BUCKET_NUMBER(1900-01-01,TD_TIMECODE,CAL_YEARS(10))                  
2006-06-06 06:06:06.006002    11