ANSI準拠
この文は、ANSI SQL:2011に準拠しています。
ANSIを拡張したことで、CASTでTIMEデータ属性句を使用できます。
AT句は、ANSI SQL:2011に準拠しています。
ANSIを拡張したことで、CASTを使用したTIMESTAMPからTIMEへの変換に、AT句がサポートされるようになりました。また、INTERVAL式の他にも追加の式を使用して、タイムゾーン変位を指定することができます。
TIME(タイムゾーンなし)とTIMESTAMP(タイムゾーンなし)はANSI SQL:2011準拠ではありません。Vantageは、現行セッションのタイムゾーンまたは指定されたタイムゾーンに基づいてTIME値またはTIMESTAMP値をUTCに内部的に変換します。
構文
CAST ( timestamp_expression AS TIME [ ( fractional_seconds_precision ) ] [ WITH TIME ZONE ] [ AT { LOCAL | SOURCE [ TIME ZONE ] | [ TIME ZONE ] { expression | time_zone_string } } ] [ data_attribute [...] ] )
構文要素
- timestamp_expression
変換するタイムスタンプ式。
- fractional_seconds_precision
SECONDフィールドの小数部の有効桁数を表わす1桁の数字。有効な範囲は、0から6です。デフォルトは6です。
- AT LOCAL
現行セッションのタイムゾーンに基づくタイムゾーン変位を使用します。
- AT SOURCE [TIME ZONE]
- 次の場合に、timestamp_expressionに付随するタイムゾーンを使用します。
- AT SOURCE TIME ZONEが指定されます。
- AT SOURCEがTIME ZONEなしで指定され、範囲にsourceという名前の列がない場合。
その他の場合、AT SOURCEがTIME ZONEなしで指定され、sourceという列が存在する場合、SOURCEではこの列を参照し、その列の値がCASTのタイムゾーン変位として使用されます。必要な場合、 列値がタイプINTERVAL HOUR(2) TO MINUTEに暗黙的に変換されます。
- AT [TIME ZONE] expression
expressionで定義されているタイムゾーン変位を使用します。
expressionのデータ型はINTERVAL HOUR(2) TO MINUTEか、暗黙的にINTERVAL HOUR(2) TO MINUTEに変換できるデータ型でなければなりません。
- AT [TIME ZONE] time_zone_string
- time_zone_stringはタイムゾーン変位を決定します。
- data_attribute
- 以下のデータ属性のうちのいずれか1つ。
- FORMAT
- NAMED
- TITLE