MySQL 时间获取计算周、月、季度起止时间、开始时间结束时间
短信预约 -IT技能 免费直播动态提醒
文章目录
获取当前时间在这一年是第几周(国外计算方式,周日为一周的第一天
SELECT WEEK(CURDATE());SELECT YEARWEEK(CURDATE());
获取当前时间在这一年是第几周(中国计算方式,周一为一周的第一天)
SELECT WEEK(CURDATE(),1);SELECT WEEKOFYEAR(CURDATE());
获取当前周的第一天日期
SELECT DATE_SUB(CURDATE(),INTERVAL WEEKDAY(CURDATE()) + 0 DAY);
获取当前周的最后一天日期
SELECT DATE_SUB(CURDATE(),INTERVAL WEEKDAY(CURDATE()) - 6 DAY)
获取指定某年某一周的起止日期
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)
获取当前月份第一天日期
SELECT CONCAT(DATE_FORMAT(LAST_DAY(CURRENT_DATE()),'%Y-%m-'),'01');
获取当前月份最后一天日期
SELECT LAST_DAY(CURRENT_DATE());
获取指定年份月份的起止日期
SELECT CONCAT_WS('-',指定年份,指定月份,'01');SELECT LAST_DAY(指定时间);
获取现在是今年的第几个季度
SELECT QUARTER(CURRENT_DATE());
获取当前季度的第一天日期
SELECT CONCAT(DATE_FORMAT(LAST_DAY(MAKEDATE(EXTRACT(YEAR FROM CURDATE()),1) + INTERVAL QUARTER(CURDATE())*3-3 MONTH),'%Y-%m-'),'01');
获取当前季度的最后一天日期
SELECT LAST_DAY(MAKEDATE(EXTRACT(YEAR FROM CURDATE()),1) + INTERVAL QUARTER(CURDATE())*3-1 MONTH);
获取指定季度的起止日期
SELECT CONCAT(DATE_FORMAT(LAST_DAY(MAKEDATE(指定年份,1) + INTERVAL 指定季度*3-3 MONTH),'%Y-%m-'),'01'); SELECT LAST_DAY(MAKEDATE(指定年份,1) + INTERVAL 指定季度*3-1 MONTH);
参考
https://blog.csdn.net/yangxiao_hui/article/details/103409663
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341