ターゲット データ型にタイムゾーンがないTIMESTAMP[(n)]のAT句を指定したときに、CAST関数、または各種の指定オプションに基づいたTeradata変換の結果を以下のテーブルに示します。ターゲットの精度がソースの精度より高い場合、精度を調整するために結果の末尾にゼロが追加されます。ターゲットの精度がソースの精度より低い場合、エラーが返されます。
指定内容 | time_expressionのデータ型 | 結果 |
---|---|---|
AT LOCAL | TIME ZONEの有無は関係なし | ソースのtime_expression (UTC)は、現在のセッションのタイムゾーンに基づくタイムゾーン変位を追加することで調整されます。ローカルのタイムスタンプ値は、上記のタイムゾーン変位でのCURRENT_DATEと、前回の調整後に取得したtime_expressionの時間部分から生成されます。結果は、このローカルのタイムスタンプ値から上記のタイムゾーン変位を引いてUTCに調整した、タイムスタンプ値になります。 これは、AT句を指定しない場合と同じ結果になります。 |
AT SOURCE (SOURCEはキーワードであり、列参照ではありません) |
TIME ZONEあり | ソースのtime_expression (UTC)は、time_expressionのタイムゾーン変位を加えることで調整されます。ローカルのタイムスタンプ値は、CURRENT_DATE (time_expressionのタイムゾーン変位に基づく)と、前回の調整後に取得したtime_expressionの時間部分から生成されます。結果は、このローカルのタイムスタンプ値から、time_expressionのタイムゾーン変位を引いてUTCに調整されたタイムスタンプ値になります。 |
AT SOURCE (SOURCEはキーワードであり、列参照ではありません) |
TIME ZONEなし | エラーが返されます。 |
AT SOURCE TIME ZONE | TIME ZONEあり | ソースのtime_expression (UTC)は、time_expressionのタイムゾーン変位を加えることで調整されます。ローカルのタイムスタンプ値は、CURRENT_DATE (time_expressionのタイムゾーン変位に基づく)と、前回の調整後に取得したtime_expressionの時間部分から生成されます。結果は、このローカルのタイムスタンプ値から、time_expressionのタイムゾーン変位を引いてUTCに調整されたタイムスタンプ値になります。 |
AT SOURCE TIME ZONE | TIME ZONEなし | エラーが返されます。 |
AT expression または AT TIME ZONE expression |
TIME ZONEの有無は関係なし | ソースのtime_expression (UTC)は、expression.で定義されたタイムゾーン変位を加えることで調整されます。 ローカルのタイムスタンプ値は、上記のタイムゾーン変位でのCURRENT_DATEと、上記の調整後に取得したtime_expressionの時間部分から生成されます。結果は、このローカルのタイムスタンプ値から上記のタイムゾーン変位を引いてUTCに調整した、タイムスタンプ値になります。 |
AT time_zone_string または AT TIME ZONE time_zone_string |
TIME ZONEの有無は関係なし | ソースのtime_expression (UTC)は、time_zone_stringに基づくタイムゾーン変位を加えることで調整されます。タイムゾーン変位は、time_zone_string、CURRENT_TIMESTAMP AT '00:00'、およびtime_expressionのTIME値(UTC)に基づいて決定されます。 ローカルのタイムスタンプ値は、上記のタイムゾーン変位でのCURRENT_DATEと、上記の調整後に取得したtime_expressionの時間部分から生成されます。結果は、このローカルのタイムスタンプ値から上記のタイムゾーン変位を引いてUTCに調整した、タイムスタンプ値になります。 |
ターゲット データ型がTIMESTAMP[(n)] WITH TIME ZONEのAT句を指定したときの、CAST関数、または各種の指定オプションに基づいたTeradata変換の結果を以下のテーブルに示します。ターゲットの精度がソースの精度より高い場合、精度を調整するために結果の末尾にゼロが追加されます。ターゲットの精度がソースの精度より低い場合、エラーが返されます。
指定内容 | time_expressionのデータ型 | 結果 |
---|---|---|
AT LOCAL | TIME ZONEの有無は関係なし | ソースのtime_expression (UTC)は、現在のセッションのタイムゾーンに基づくタイムゾーン変位を追加することで調整されます。ローカルのタイムスタンプ値は、上記のタイムゾーン変位でのCURRENT_DATEと、上記の調整後に取得したtime_expression の時刻部分から生成されます。この結果のタイムスタンプはUTCに調整され、CASTの結果値(UTC)は、上記のタイムゾーン変位に調整されます。 time_expressionのデータ型がタイムゾーンなしのときには、AT句を指定しない場合と同じ結果になります。 |
AT SOURCE (SOURCEはキーワードであり、列参照ではありません) |
TIME ZONEあり | ソースのtime_expression (UTC)は、time_expressionのタイムゾーン変位を加えることで調整されます。ローカルのタイムスタンプ値は、CURRENT_DATE (time_expressionのタイムゾーン変位に基づく)と、前回の調整後に取得したtime_expressionの時間部分から生成されます。この結果のタイムスタンプはUTCに調整され、CASTの結果値(UTC)は、time_expressionのタイムゾーン変位に調整されます。 |
AT SOURCE (SOURCEはキーワードであり、列参照ではありません) |
TIME ZONEなし | エラーが返されます。 |
AT SOURCE TIME ZONE | TIME ZONEあり | ソースのtime_expression (UTC)は、time_expressionのタイムゾーン変位を加えることで調整されます。ローカルのタイムスタンプ値は、CURRENT_DATE (time_expressionのタイムゾーン変位に基づく)と、前回の調整後に取得したtime_expressionの時間部分から生成されます。この結果のタイムスタンプはUTCに調整され、CASTの結果値(UTC)は、time_expressionのタイムゾーン変位に調整されます。 |
AT SOURCE TIME ZONE | TIME ZONEなし | エラーが返されます。 |
AT expression または AT TIME ZONE expression |
TIME ZONEの有無は関係なし | ソースのtime_expression (UTC)は、expression.で定義されるタイムゾーン変位を加えることで調整されます。 ローカルのタイムスタンプ値は、上記のタイムゾーン変位でのCURRENT_DATEと、上記の調整後に取得したtime_expression の時刻部分から生成されます。この結果のタイムスタンプはUTCに調整され、CASTの結果値(UTC)は、上記のタイムゾーン変位に調整されます。 |
AT time_zone_string または AT TIME ZONE time_zone_string |
TIME ZONEの有無は関係なし | ソースのtime_expression (UTC)は、time_zone_string.に基づくタイムゾーン変位を追加することで調整されます。タイムゾーン変位は、time_zone_string、CURRENT_TIMESTAMP AT '00:00'、およびtime_expressionのTIME値(UTC)に基づいて決定されます。 ローカルのタイムスタンプ値は、上記のタイムゾーン変位でのCURRENT_DATEと、上記の調整後に取得したtime_expression の時刻部分から生成されます。この結果のタイムスタンプはUTCに調整され、CASTの結果値(UTC)は、上記のタイムゾーン変位に調整されます。 |