mysql 日期函数

1.获取当前时间在这一年是第几周(国外计算方式,周日为一周的第一天)

/* 获取指定时间在这一年是第几周 可以把 CURDATE() 函数替换成你的指定时间 */
SELECT WEEK(CURDATE());
SELECT YEARWEEK(CURDATE());

2.获取当前时间在这一年是第几周(中国计算方式,周一为一周的第一天)

/* 获取指定时间在这一年是第几周 可以把 CURDATE() 函数替换成你的指定时间 */
SELECT WEEK(CURDATE(),1);
SELECT WEEKOFYEAR(CURDATE());

3.获取当前周的第一天日期

SELECT DATE_SUB(CURDATE(),INTERVAL WEEKDAY(CURDATE()) + 0 DAY);

4.获取当前周的最后一天日期

SELECT DATE_SUB(CURDATE(),INTERVAL WEEKDAY(CURDATE()) - 6 DAY)

5.获取指定某年某一周的起止日期

/* 指定某年某一周的第一天日期 */
SELECT DATE_SUB((DATE_SUB(CONCAT(指定年份,'-01-01'), INTERVAL -(指定第几周-1) WEEK)),INTERVAL WEEKDAY((DATE_SUB(CONCAT(指定年份,'-01-01'), INTERVAL -(指定第几周-1) WEEK))) + 0 DAY)
/* 指定某年某一周的最后一天日期 */
SELECT DATE_SUB((DATE_SUB(CONCAT(指定年份,'-01-01'), INTERVAL -(指定第几周-1) WEEK)),INTERVAL WEEKDAY((DATE_SUB(CONCAT(指定年份,'-01-01'), INTERVAL -(指定第几周-1) WEEK))) - 6 DAY)

6.获取当前月份第一天日期

SELECT CONCAT(DATE_FORMAT(LAST_DAY(CURRENT_DATE()),'%Y-%m-'),'01'); 

7.获取当前月份最后一天日期

SELECT LAST_DAY(CURRENT_DATE()); 

8.获取指定年份月份的起止日期

/* 指定年份月份的第一天日期 */
SELECT CONCAT_WS('-',指定年份,指定月份,'01');
/* 指定年份月份的最后一天日期 */
SELECT LAST_DAY(CONCAT_WS('-',指定年份,指定月份,'01'));

9.获取现在是今年的第几个季度

SELECT QUARTER(CURRENT_DATE());

10.获取当前季度的第一天日期

SELECT CONCAT(DATE_FORMAT(LAST_DAY(MAKEDATE(EXTRACT(YEAR FROM  CURDATE()),1) + INTERVAL QUARTER(CURDATE())*3-3 MONTH),'%Y-%m-'),'01');   

11.获取当前季度的最后一天日期

SELECT LAST_DAY(MAKEDATE(EXTRACT(YEAR  FROM CURDATE()),1) + INTERVAL QUARTER(CURDATE())*3-1 MONTH);  

12.获取指定季度的起止日期

/* 指定季度的第一天日期 */
SELECT CONCAT(DATE_FORMAT(LAST_DAY(MAKEDATE(指定年份,1) + INTERVAL 指定季度*3-3 MONTH),'%Y-%m-'),'01'); 
/* 指定季度的最后一天日期 */
SELECT LAST_DAY(MAKEDATE(指定年份,1) + INTERVAL 指定季度*3-1 MONTH);  
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值