MySQL 時間獲取計算周、月、季度起止時間、開始時間結束時間

獲取當前時間在這一年是第幾周(國外計算方式,週日爲一週的第一天)
/* 獲取指定時間在這一年是第幾周 可以把 CURDATE() 函數替換成你的指定時間 */
SELECT WEEK(CURDATE());
SELECT YEARWEEK(CURDATE());
獲取當前時間在這一年是第幾周(中國計算方式,週一爲一週的第一天)
/* 獲取指定時間在這一年是第幾周 可以把 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);  


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章