ORACLE SQL 日期和事件函数

第十六章:日期和时间函数

查看与时区相关的地区描述

conn / as sysdba

select * from v$timezone_names;


将地区描述转换成时区

SELECT TZ_OFFSET('US/Eastern') FROM DUAL;


修改数据库的时间显示格式

alter session set nls_date_format='yyyy-mm-dd hh24:mi:ss';


查看当前会话的时区:

SELECT SESSIONTIMEZONE,CURRENT_DATE FROM DUAL;


修改当前会话的时区:

ALTER SESSION SET TIME_ZONE = '-5:0';


CURRENT_DATE = sysdate

CURRENT_TIMESTAMP 返回精确时间(绝对时间全球化时间戳)

LOCALTIMESTAMP 本地化时间戳


select CURRENT_TIMESTAMP from dual;

select LOCALTIMESTAMP from dual;


返回创建数据库时的时区选项:

SELECT DBTIMEZONE FROM DUAL;


会话级别的时区选项:

SELECT SESSIONTIMEZONE FROM DUAL;


SELECT EXTRACT(YEAR FROM SYSDATE) FROM DUAL;

select to_char(sysdate,'yyyy') from dual;


SELECT EXTRACT(month FROM SYSDATE) FROM DUAL;

select to_char(sysdate,'fmmm') from dual;


将字符串转换成绝对时间全球化时间戳

SELECT FROM_TZ(TIMESTAMP

'2000-03-28 08:00:00','3:00')

FROM DUAL;


将字符串转换成本地时间戳

SELECT TO_TIMESTAMP('2000-12-01 11:00:00','YYYY-MM-DD HH:MI:SS') FROM DUAL;


将字符串转换成绝对时间全球化时间戳

SELECT

TO_TIMESTAMP_TZ('1999-12-01 11:00:00 -8:00', 'YYYY-MM-DD HH:MI:SS TZH:TZM')

FROM DUAL;


从当前时间点增加一年零两个月:

select sysdate+TO_YMINTERVAL('01-02') from dual;


从当前时间点增加5天2小时:

select sysdate+TO_DSINTERVAL('5 2:00:00') from dual;


你可能感兴趣的:(oracle,日期操作,时间操作)