Oracle对时间的相关操作

爷,独闯天下 提交于 2019-12-05 06:23:29

目录导航:

1. 年操作

2. 月操作

3. 周操作

4. 天操作

5. 时操作

6. 分操作

7. 秒操作


1、年操作

SELECT add_months(SYSDATE, -12) FROM dual;  --获取上一年时间(1)
SELECT SYSDATE - INTERVAL '1' YEAR FROM DUAL; --获取上一年时间(2)
SELECT add_months(SYSDATE, 12) FROM dual;  --获取下一年时间(1)
SELECT SYSDATE + INTERVAL '1' YEAR FROM DUAL; --获取下一年时间(2)

2. 月操作

SELECT add_months(SYSDATE, -1) FROM dual;  --获取上一个月时间(1)
SELECT SYSDATE - INTERVAL '1' MONTH FROM dual;  --获取上一个月时间(2)
SELECT add_months(SYSDATE, 1) FROM dual;   --获取下一个月时间(1)
SELECT SYSDATE + INTERVAL '1' MONTH  FROM dual;   --获取下一个月时间(2)

3. 周操作

SELECT SYSDATE +7 FROM dual;  --获取上一周时间(1)
SELECT SYSDATE,SYSDATE + INTERVAL '7' DAY FROM dual;  --获取上一周时间(2)
SELECT SYSDATE -7 FROM dual;  --获取下一周时间(1)
SELECT SYSDATE,SYSDATE - INTERVAL '7' DAY FROM dual;  --获取当天下一周时间(2)

4. 天操作

SELECT SYSDATE FROM dual;  --获取当前时间

SELECT SYSDATE - 1 FROM dual;  --获取昨天时间(1)
SELECT SYSDATE,SYSDATE - INTERVAL '1' DAY FROM dual;  --获取昨天时间(2)   
SELECT SYSDATE + 1 FROM dual;  --获取明天时间(1)
SELECT SYSDATE + INTERVAL '1' DAY FROM dual;  --获取明天时间(2)

5. 时操作

SELECT SYSDATE - 1/24 FROM dual; --获取当天前一小时时间(1)
SELECT SYSDATE - INTERVAL '1' HOUR FROM dual; --获取当天前一小时时间(2)
SELECT SYSDATE + 1/24 FROM dual; --获取当天下一个小时时间(1)
SELECT SYSDATE,SYSDATE + INTERVAL '1' HOUR FROM dual; --获取当天下一个小时时间(2)

6. 分操作

SELECT SYSDATE - 1/24/60 FROM dual; --获取当天前一分钟时间(1)
SELECT SYSDATE - INTERVAL '1' MINUTE FROM dual; --获取当天前一分钟时间(2)
SELECT SYSDATE + 1/24/60 FROM dual; --获取当天下一分钟时间(1)
SELECT SYSDATE,SYSDATE + INTERVAL '1' MINUTE FROM dual; --获取当天下一分钟时间(2)

7. 秒操作

SELECT SYSDATE - 1/24/60/60 FROM dual;  --获取当天前一秒时间(1)
SELECT SYSDATE - INTERVAL '1' SECOND FROM dual;  --获取当天前一秒时间(2)
SELECT SYSDATE + 1/24/60/60 FROM dual;  --获取当天下一秒时间(1)
SELECT SYSDATE,SYSDATE + INTERVAL '1' SECOND FROM dual;  --获取当天下一秒时间(2)
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!