如何在mysql数据库中取得每月第一天和最后一天之间的数据?

如何在mysql数据库中取得每月第一天和最后一天之间的数据?,第1张

1 某一天的所在月的第一天:

select date_add(date_add(last_day('2008-02-01'),interval 1 day),interval -1 month)

某一天的所在月的最后一天:

select last_day('2008-02-01')

2 加在语句中:

select ... where dt between date_add(date_add(last_day('2012-02-01'),interval 1 day),interval -1 month) and last_day('2012-02-01')

1 某一天的所在月的第一天:

select date_add(date_add(last_day('2008-02-01'),interval 1 day),interval -1 month)

某一天的所在月的最后一天:

select last_day('2008-02-01')

2 加在语句中:

select ... where dt between date_add(date_add(last_day('2012-02-01'),interval 1 day),interval -1 month) and last_day('2012-02-01')

可以利用sql函数实现,首先获取传递过来的日期中的天数,然后减去(天数-1),即可得到第一天日期。

例如mysql:DATE_SUB($[yyyy-mm-dd], INTERVAL (DAY($[yyyy-mm-dd]) -1) DAY)

大体思路是这样的,不同的数据库sql日期函数略有不同,自己调试下吧。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/7281604.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-03
下一篇 2023-04-03

发表评论

登录后才能评论

评论列表(0条)

保存