MySQL、Oracle 获取当前系统时间、年份、季度、月份、日期、天数、周数

获取系统时间 MySQL: NOW(),Oracle: SYSDATE

1 MySQL 获取相关时间

1.1 获取当前系统时间、当前日期、当前时间

1.1.1 获取当前系统时间:NOW()

NOW() : 获取当前系统时间,
返回的字符串格式为 YYYY-MM-DD HH:MM:SS。

参考案例:

SELECT NOW();  -- 返回当前系统时间:2024-01-13 10:41:37

1.1.2 获取当前日期:CURDATE()

参考案例:

SELECT CURDATE();  -- 返回当前日期:2024-01-13

1.1.3 获取当前时间:CURTIME()

参考案例:

SELECT CURTIME();  -- 返回当前时间:10:41:37

1.2 获取当前年份、季度、月份

1.2.1 获取当前年份:YEAR(NOW())

参考案例:

SELECT YEAR(NOW());  -- 返回当前年份:2024

1.2.2 获取当前季度:QUARTER(NOW())

参考案例:

SELECT QUARTER(NOW());  -- 返回当前季度:1

1.2.3 获取当前月份:MONTH(NOW())

参考案例:

SELECT MONTH(NOW());  -- 返回当前月份:1

1.2.4 获取当前日期部分:DAY(NOW())

参考案例:

SELECT DAY(NOW());  -- 返回当前日期:13

1.3 获取天数、周数

1.3.1 获取日期在一年的哪天:DAYOFYEAR()

参考案例:

SELECT DAYOFYEAR(NOW());  -- 返回天数:13
SELECT DAYOFYEAR('2024-05-01'); -- 返回天数:122

1.3.2 获取日期所在的周数:WEEK()

WEEK() 有二个参数:
(1)日期或时间戳
(2)周的起始日(0 表示星期一,1 表示星期日)

注意:所在的周从星期一开始,WEEK(NOW()) 返回的是上周的周数

参考案例:

SELECT WEEK(NOW());  -- 返回周数:1
SELECT WEEK(NOW(),1); -- 返回周数:2
SELECT WEEK('2024-01-30'); -- 返回周数:4
SELECT WEEK('2024-01-30', 1); -- 返回周数:5

2 Oracle 获取相关时间

2.1 获取当前系统时间、当前日期、当前时间

2.1.1 获取当前系统时间:SYSDATE

SYSDATE : 获取当前系统时间,
返回的字符串格式为 YYYY-MM-DD HH24:MI:SS。

参考案例:

SELECT SYSDATE FROM DUAL;  -- 返回当前系统时间:2024-01-13 11:33:42

2.1.2 获取当前日期:TO_CHAR(SYSDATE, ‘YYYY-MM-DD’)

参考案例:

SELECT TO_CHAR(SYSDATE,'YYYY-MM-DD') FROM DUAL; -- 返回当前日期:2024-01-13 

2.1.3 获取当前时间:TO_CHAR(SYSDATE,‘HH24:MI:SS’)

参考案例:

SELECT TO_CHAR(SYSDATE,'HH24:MI:SS') FROM dual; -- 返回当前时间:11:33:42 

2.2 获取当前年份、季度、月份

2.2.1 获取当前年份:EXTRACT(YEAR FROM SYSDATE)

参考案例:

SELECT EXTRACT(YEAR FROM SYSDATE) FROM DUAL;  -- 返回当前年份:2024

2.2.2 获取当前季度:TO_CHAR(SYSDATE, ‘Q’)

参考案例:

SELECT TO_CHAR(SYSDATE, 'Q') FROM DUAL;  -- 返回当前季度:1
SELECT TO_CHAR(TO_DATE('2024-05-01','YYYY-MM-DD'), 'Q') FROM DUAL; -- 返回:2 

2.2.3 获取当前月份:EXTRACT(MONTH FROM SYSDATE)

参考案例:

SELECT EXTRACT(MONTH FROM SYSDATE) FROM DUAL;  -- 返回当前月份:1

2.2.4 获取当前日期部分:EXTRACT(DAY FROM SYSDATE)

参考案例:

SELECT EXTRACT(DAY FROM SYSDATE) FROM DUAL;  -- 返回当前日期:13

2.3 获取天数、周数

2.3.1 日期在一年的哪天:TO_NUMBER(TO_CHAR(SYSDATE, ‘DDD’))

参考案例:

SELECT TO_NUMBER(TO_CHAR(SYSDATE, 'DDD')) FROM DUAL; -- 返回天数:13
SELECT TO_NUMBER(TO_CHAR(TO_DATE('2024-05-01','YYYY-MM-DD'), 'DDD')) FROM DUAL; -- 返回天数:122

2.3.2 日期所在的周数:TO_NUMBER(TO_CHAR(SYSDATE, ‘WW’))

参考案例:

SELECT TO_NUMBER(TO_CHAR(SYSDATE, 'WW')) FROM DUAL; -- 返回周数:2
SELECT TO_NUMBER(TO_CHAR(TO_DATE('2024-01-30', 'YYYY-MM-DD'), 'WW')) FROM DUAL; -- 返回周数:5
  • 19
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值