MYSQL中取當前周 月 季 年的第一天與最後一天

2021-07-25 23:34:49 字數 2937 閱讀 4436

整理後的sql**,全部可執行

[sql]view plain

copy

#當年第一天:  

select

date_sub(curdate(),interval dayofyear(now())-1 

day);  

#當年最後一天:  

select

concat(

year

(now()),

'-12-31'

);    

#當前week的第一天:    

select

date_sub(curdate(),interval weekday(curdate()) + 1 

day);  

#當前week的最後一天:    

select

date_sub(curdate(),interval weekday(curdate()) - 5 

day);  

#前一week的第一天:    

select

date_sub(curdate(),interval weekday(curdate()) + 8 

day);  

#前一week的最後一天:    

select

date_sub(curdate(),interval weekday(curdate()) + 2 

day);  

#前兩week的第一天:    

select

date_sub(curdate(),interval weekday(curdate()) + 15 

day);  

#前兩week的最後一天:    

select

date_sub(curdate(),interval weekday(curdate()) + 9 

day);  

#當前month

的第一天:    

select

concat(date_format(last_day(now()),

'%y-%m-'

),'01'

);  

#當前month

的最後一天:    

select

last_day(now());  

#前一month

的第一天:    

select

concat(date_format(last_day(now() - interval 1 

month

),'%y-%m-'

),'01'

);  

#前一month

的最後一天:    

select

last_day(now() - interval 1 

month

);  

#前兩month

的第一天:    

select

concat(date_format(last_day(now() - interval 2 

month

),'%y-%m-'

),'01'

);  

#前兩month

的最後一天:    

select

last_day(now() - interval 2 

month

);  

#當前quarter的第一天:    

select

concat(date_format(last_day(makedate(extract(

year

from

curdate()),1) + interval quarter(curdate())*3-3 

month

),'%y-%m-'

),'01'

);   

#當前quarter的最後一天:    

select

last_day(makedate(extract(

year

from

curdate()),1) + interval quarter(curdate())*3-1 

month

);  

#前一quarter的第一天:    

select

concat(date_format(last_day(makedate(extract(

year

from

curdate()),1) + interval quarter(curdate())*3-6 

month

),'%y-%m-'

),'01'

);  

#前一quarter的最後一天:    

select

last_day(makedate(extract(

year

from

curdate()),1) + interval quarter(curdate())*3-4 

month

);  

#前兩quarter的第一天:    

select

concat(date_format(last_day(makedate(extract(

year

from

curdate()),1) + interval quarter(curdate())*3-9 

month

),'%y-%m-'

),'01'

);  

#前兩quarter的最後一天:    

select

last_day(makedate(extract(

year

from

curdate()),1) + interval quarter(curdate())*3-7 

month

);  

MYSQL中取當前周 月 季 年的第一天與最後一天

當年第一天 select date sub curdate interval dayofyear now 1 day 當年最後一天 select concat year now 12 31 當前week的第一天 select date sub curdate interval weekday cur...

MYSQL中取當前周 月 季 年的第一天與最後一天

url 當年第一天 select date sub curdate interval dayofyear now 1 day 當年最後一天 select concat year now 12 31 當前week的第一天 select date sub curdate interval weekday...

MYSQL中取當前周 月 季 年的第一天與最後一天

cleanfield 最後發布於2014 11 24 16 57 01 閱讀數 25989 收藏 展開整理後的sql 全部可執行 當年第一天 select date sub curdate interval dayofyear now 1 day 當年最後一天 select concat year ...