16.20 - ビジネス カレンダ関数を使用するための前提条件 - Teradata Vantage NewSQL Engine

Teradata Vantage™ SQL日付と時刻の関数および式

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

これらの関数を使用する前に、データベース初期化プログラム(DIP)ユーティリティを実行し、DIPSYSFNCスクリプトを実行する必要があります。DIPALLまたはDIPSYSFNCスクリプトにより、カレンダ関数がSYSLIBデータベース内に作成されます。DIPユーティリティの詳細は、<Teradata Vantage™ - データベース ユーティリティ、B035-1102>を参照してください。

ビジネス カレンダ関数と同じ名前の、ユーザーが開発したUDFを持っている場合は、ビジネス カレンダ関数を呼び出す前に、ユーザーが開発したUDFを通常のUDF検索パスから削除する必要があります。現在のデータベースでビジネス カレンダ関数を見つけられない場合、Teradata DatabaseはTD_SYSFNLIBデータベースで関数を検索します。この代わりに、完全修飾した構文(TD_SYSFNLIB.calendar_function_name)を使用して、カレンダ関数を呼び出すこともできます。

例: 全四半期の第1週の累積売上げ

この例では、全四半期の第1週の品目の累積売上げを検索します。カレンダ設定ごとに結果を表示します。

SEL Item_Code, SUM(Sale_Amt) FROM Sales_Tbl
WHERE WeekNumber_Of_Quarter(Sale_Date) = 1
GROUP BY Item_Code;

SET SESSION calendar = Teradata;

Item_Code SUM(Sale_Amt)
101 225
102 120

SET SESSION CALENDAR = Compatible;

Item_Code SUM(Sale_Amt)
101 245
102 100

SET SESSION calendar = ISO;

Item_Code SUM(Sale_Amt)
101 135
102 30
Sales_Tbl
Item_Code Sale_Amt Sale_Date
101 10 2008-12-30
101 15 2008-12-31
101 20 2009-01-01
101 25 2009-01-02
101 30 2009-01-03
101 35 2009-01-04
101 40 2009-01-05
101 45 2009-01-06
101 50 2009-01-07
101 55 2009-01-08
102 10 2009-01-01
102 20 2009-01-03
102 30 2009-01-05
102 40 2009-01-07
102 50 2009-01-09
Jan 2009 Calendar
S M T W T F S
        1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31