Oracle05--日期运算

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-17
SELECT 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 A
SET 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;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值