2017-08-15 325 views
-1

我必須將具有數據類型作爲時間戳的列中的值與具有時區數據類型的時間戳的列進行比較。請告訴我如何將前數據類型轉換爲帶時區的時間戳。我有查詢是這樣的:帶時區時間戳的時間戳

SELECT * FROM TABLE1 WHERE COL1>= (SELECT COL2 FROM TABLE 2) 

其中COL1是TIMESTAMP和COL2是WITH TZ

TIMESTAMP樣本值i COL2是:15-JUN-12 05.46.29.600102000 PM -07:00

回答

0

您可以使用CAST(COL1 as TIMESTAMP WITH TIME ZONE)

Oracle將當前用戶會話時區SESSIONTIMEZONE考慮在內進行轉換。比較本身始終在UTC值上進行。

如果你喜歡指定的時區,你可以FROM_TZ,例如FROM_TZ(COL1, 'Europe/Zurich')

+0

感謝它的工作 – zubi