不少时候,咱们进行数据库查询的时候,查询一个季度的财务报表的时候。
好比说查询2020年第一季度的单子,可能传入后台的就是20201,表示的就是20201第一季度,这时候咱们要转换为日期。mysql
select * from quarters
SELECT DATE_ADD(ADDDATE(q_end,-DAY(q_end)+1),INTERVAL -2 MONTH) q_start,q_end from( select LAST_DAY(STR_TO_DATE(CONCAT(SUBSTR(args,1,4),MOD(args,10)*3),'%Y%m')) q_end from quarters ) x
select DATEADD(m,-2,q_end) q_start, DATEADD(d,-1,DATEADD(m,1,q_end))q_ebd from( select cast(SUBSTRING(cast(args as varchar),1,4)+'-'+CAST(args%10*3 as varchar)+'-1' as datetime) q_end from quarters ) x
效果:sql