+ (連結) 演算子 - Amazon Redshift

+ (連結) 演算子

+ 記号の両側のいずれかの方で DATE を TIME または TIMETZ に連結し、TIMESTAMP または TIMESTAMPTZ を返します。

構文

date + time
date + timetz

引数の順序は逆にすることができます。

引数

date

DATE の列、あるいは暗黙的に DATE に変換される式。

time

TIME の列、あるいは暗黙的に TIME に変換される式。

timetz

TIMETZ の列、あるいは暗黙的に TIMETZ に変換される式。

戻り型

入力が time の場合は TIMESTAMP です。

入力が timetz の場合は TIMESTAMPTZ です。

時間列の例

次のテーブルの TIME_TEST の例には、3 つの値が挿入された列 TIME_VAL (タイプ TIME) があります。

select time_val from time_test; time_val --------------------- 20:00:00 00:00:00.5550 00:58:00

次の例では、日付リテラルと TIME_VAL 列を連結します。

select date '2000-01-02' + time_val as ts from time_test; ts --------------------- 2000-01-02 20:00:00 2000-01-02 00:00:00.5550 2000-01-02 00:58:00

次の例では、日付リテラルと時刻リテラルを連結します。

select date '2000-01-01' + time '20:00:00' as ts; ts --------------------- 2000-01-01 20:00:00

TIMETZ 列の例

次のテーブルの TIMETZ_TEST の例には、3 つの値が挿入された列 TIMETZ_VAL (タイプ TIMETZ) があります。

select timetz_val from timetz_test; timetz_val ------------------ 04:00:00+00 00:00:00.5550+00 05:58:00+00

次の例では、日付リテラルと TIMETZ_VAL 列を連結します。

select date '2000-01-01' + timetz_val as ts from timetz_test; ts --------------------- 2000-01-01 04:00:00+00 2000-01-01 00:00:00.5550+00 2000-01-01 05:58:00+00

次の例では、DATE リテラルと TIMETZ 列を連結します。

select date '2000-01-01' + timetz '20:00:00 PST' as ts; ts ------------------------ 2000-01-02 04:00:00+00