网上找来的,一直没用到过时区转换。借花献佛,时区转换函数。 SQL> create or replace function my_new_time 2 (p_dwtz timestamp with time zone, 3 p_tz VARCHAR2) 4 return date 5 IS 6 BEGIN 7 return cast(p_dwtz at time zone p_tz as date); 8 END my_new_time; 9 /函数已创建。SQL> SELECT my_new_time(TIMESTAMP'2008-10-5 17:55:54','+03:00') newtime FROM dua l;NEWTIME -------------- 05-10月-08SQL> alter session set nls_date_format='yyyy-mm-dd hh24:mi:ss';会话已更改。SQL> SELECT my_new_time(TIMESTAMP'2008-10-5 17:55:54','+03:00') newtime FROM dua l;NEWTIME ------------------- 2008-10-05 12:55:54SQL>
(TIMESTAMP'2010-01-2701:59:59'
-------------------------------------------------
26-JAN-10 05.59.59.000000000 PM GMT
SQL> create or replace function my_new_time
2 (p_dwtz timestamp with time zone,
3 p_tz VARCHAR2)
4 return date
5 IS
6 BEGIN
7 return cast(p_dwtz at time zone p_tz as date);
8 END my_new_time;
9 /函数已创建。SQL> SELECT my_new_time(TIMESTAMP'2008-10-5 17:55:54','+03:00') newtime FROM dua
l;NEWTIME
--------------
05-10月-08SQL> alter session set nls_date_format='yyyy-mm-dd hh24:mi:ss';会话已更改。SQL> SELECT my_new_time(TIMESTAMP'2008-10-5 17:55:54','+03:00') newtime FROM dua
l;NEWTIME
-------------------
2008-10-05 12:55:54SQL>
这个方法是将什么时间转为什么时间啊?
我现在是知道某地方a的时间和a所在时区,比如‘2010-2-1 14:22:30’在时区‘+03:00'
知道另外一个地方b的时区,比如’+08:00‘
现在要将a的时间转为b对应的时间怎么转?
知道另外一个地方b的时区,比如’+08:00‘
现在要将a的时间转为b对应的时间怎么转?
哪位高手帮忙写下,多谢