玖叶教程网

前端编程开发入门

Oracle 日期/时间数据类型(oracle的日期类型)

4种日期/时间数据类型:

DATE -这(与前两个数据库不同)包含日期和时间信息(总是),精度为1秒。此数据类型占用7个字节。

TIMESTAMP -这是一种更精确的数据类型,它包括日期和时间,可配置精度高达9个数字的分数秒(1纳秒)。这种数据类型占用7到11个字节。

TIMESTAMP WITH TIMEZONE -与TIMESTAMP相同,但也包括时区数据,长度为13字节。

TIMESTAMP WITH LOCAL TIMEZONE—与TIMESTAMP WITH TIMEZONE相同,但有两个例外:数据存储在磁盘中时被规范化为数据库时区,并且数据根据其会话时区呈现给客户端。它占用7到11个字节。

日期/时间函数

Oracle中有相当多的函数,这里有一些重要的函数:

sysdate—以date数据类型返回数据库服务器的当前日期和时间。

systemtimestamp -返回数据库服务器的当前日期和时间,数据类型为TIMESTAMP WITH TIMEZONE。

current_date -根据会话时区以date数据类型返回当前日期和时间。

current_timestamp -根据会话时区以TIMESTAMP WITH TIMEZONE数据类型返回当前日期和时间。

add_months(date,integer)—将月数添加到提供的日期并返回date数据类型

Last_day (date) -返回所提供日期当月的最后一天。

To_char (date,format)——获取任何日期数据类型,并根据提供的格式返回其文本表示形式。

Trunc (date,format) -将截断(舍入)所提供的日期到所提供的日期部分。

日期/时间的计算

Oracle也支持日期计算:

date + number或date - number -在日期上添加或减去天数并返回date数据类型(“number”可以是非整数)

date - date -返回一个数字,表示两个日期之间的天数(包括一天的小数部分)。

timestamp - timestamp -返回包含时间戳之差的INTERVAL。

举例


SQL> select sysdate,trunc(sysdate,'HH24'),last_day(sysdate) from dual;
 
SYSDATE              TRUNC(SYSDATE,'HH24' LAST_DAY(SYSDATE)
-------------------- -------------------- --------------------
15-SEP-2021 16:45:50 15-SEP-2021 16:00:00 30-SEP-2021 16:45:50
 
SQL> select to_char(sysdate,'YYYY/MON/DD HH24:MI:SS Day') from dual;
 
TO_CHAR(SYSDATE,'YYYY/MON/DDHH24:MI:SSDAY')
------------------------------------------------------------------
2021/SEP/15 16:47:31 Wednesday
 
SQL>  create table dates(f1 date,f2 timestamp);
 
Table created.
 
SQL> insert into dates values(sysdate,systimestamp);
 
1 row created.
 
SQL> commit;
 
Commit complete.
 
SQL> select * from dates;
 
F1                   F2                               
-------------------- ------------------------------
15-SEP-2021 16:40:10 15-SEP-21 04.40.10.773729 PM     
 
SQL> select sysdate,f1,sysdate-f1 from dates;
 
SYSDATE   F1        SYSDATE-F1
--------- --------- ----------
15-SEP-21 15-SEP-21   .0003125
 
SQL> select systimestamp,f2,systimestamp-f2 from dates;
 
SYSTIMESTAMP                            F2                              SYSTIMESTAMP-F2
--------------------------------------- ------------------------------- ----------------------------
15-SEP-21 04.43.38.305012 PM -07:00     15-SEP-21 04.40.10.773729 PM    +000000000 00:03:27.531283

发表评论:

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言