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

例: 現在の日付から年を返す

次の例は、現在の日付から年を整数として戻します。

SELECT EXTRACT (YEAR FROM CURRENT_DATE);

例: 購入日に90日を追加する

PurchaseDateがDATEフィールドであると想定すると、この例は、整数のPurchaseDateに90日を加算することによって形成される日付値の月を戻します。

SELECT EXTRACT (MONTH FROM PurchaseDate+90) FROM SalesTable;

例: 整数を返す

次の例は、整数の12を戻します。

SELECT EXTRACT (DAY FROM '1996-12-12');

例: 文字リテラルの結果が有効な日付にならない場合

この例では、文字定数が有効な日付に評価されないため、エラーが戻されます。

SELECT EXTRACT (DAY FROM '1996-02-30');

例: 文字列リテラルがANSI SQL:2011の日付形式に一致しない場合

以下の例では、文字列定数がANSI SQL:2011の日付形式に合致しないため、エラーが戻されます。

SELECT EXTRACT (DAY FROM '96-02-15');

EXTRACTへの引数がDATEタイプの値の場合、含まれる値は確実に有効な日付となり、EXTRACTはエラーを戻すことができません。

例: 非ANSI日時の定義

次の例は、非ANSI日時定義に関連しています。引数が時間値として書式化された文字定数の場合には、この引数はREALに変換されて処理されます。この例では、59が戻されます。

SELECT EXTRACT (MINUTE FROM '23:59:17.3');

例: 現在の時刻から時間を返す

この例は、現在時刻から時間値を整数として戻します。

SELECT EXTRACT (HOUR FROM CURRENT_TIME);

現在時刻は、指示された精度でシステム値 TIMEとして検索されます。

例: 秒をDECIMALとして返す

次の例では、DECIMAL(8,2)の形で秒が戻されます。これは、CURRENT_TIMEの秒の小数点以下の桁数2に基づいています。

SELECT EXTRACT (SECOND FROM CURRENT_TIME (2));