Oracle05--日期运算

来源:互联网 发布:mac 游戏排行 编辑:程序博客网 时间:2024/06/15 11:21

Oracle05——日期运算

1.Oracle中系统日期的表示方式

在Oracle中,系统日期是有一个预定义变量表示的,该变量名称叫 SYSDATE,举例说明: 获取系统当前时间            SELECT SYSDATE FROM DUAL

2.日期与字符串的双向转换

   字符串与日期之间的双向转换,Oracle中是通过两个内置函数完成   将日期转换成字符串  TO_CHAR(日期类型,格式字符串)   格式字符串:日期转换成字符串后的显示格式,格式串不区分大小写   例子2:将系统当前时间,转换成 四位年-两位月-两位日        SELECT SYSDATE,            TO_CHAR(SYSDATE,'YYYY-MM-DD')            TO_CHAR(SYSDATE,'YYYY-MM-DD')ISODATE(标准型)               TO_CHAR(SYSDATE,'MM-DD-YYYY') "$DATE",            TO_CHAR(SYSDATE,'YYYY MM DD HH24:MI:SS')时间戳        FROM DUAL;  将字符串转换成日期:TO_DATE(日期字符串,格式字符串)例子:将指定的字符串转换成日期:2017-11-17SELECT TO_DATE('2017-11-17','YYYY-MM-DD')FROM DUAL;

3.日期类型在数据库中的存储问题:

所有数据库中,日期类型都是以一个长整数存储到数据库中的.该整数代表的都是指定日期与标准时间(1970-01-01 00:00:00)之间的毫秒差

4.Oracle中的天数加减问题

在Oracle中,日期可以直接与整数进行加减计算,单位是天SELECT TO_DATE('2017-11-17','YYYY-MM-DD')+1,FROM DUAL;

5.修改指定的列为系统时间

增加列     ALTER TABLE PERSON ADD PDATE DATE(--这个DATE是数据类型)修改时间    UPDATE PERSON A    SET A.PDATE=SYSDATE,    COMMIT;

修改指定的记录为指定的时间

UPDATE PERSON ASET A.PDATE=TO_DATE('2017-11-17','YYYY-MM-DD')WHERR PID=12;COMMIT;

6.时分秒的加减

SELECT SYSDATE    --三小时后    SYSDATE+3/24,    --十分钟后    SYSDATE+10/60/24,    --5秒后    SYSDATE+5/60/60/24,    --3600毫秒之后    SYSDATE+3600/1000/60/60/24,

7.月份的加减

月份加减是通过Oracle内置函数ADD_MONTHS(日期,数值)完成的.  数值 为正数  加相应月数  数值 为负数  减相应月数例子:计算指定日期的次月同日请计算2013-01-30的次月同时,问是哪一天如果次月无同日,那么一次月最后一日,为次月同日。SELECT ADD_MONTHS(TO_DATE('2013-01-30','YYYY-MM-DD'),1)FROM DUAL;
原创粉丝点击