Oracle对时间的相关操作

目录导航:

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)

猜你喜欢

转载自www.cnblogs.com/LuckyZLi/p/11910130.html