您可以通过计算前一个月的last_day并添加一天来获得该月的第一天。这很尴尬,但我认为这比将日期格式化为字符串并将其用于计算更好。
select *from yourtable twhere t.date >= DATE_ADD(LAST_DAY(DATE_SUB(NOW(), INTERVAL 2 MONTH)), INTERVAL 1 DAY) and t.date <= DATE_SUB(NOW(), INTERVAL 1 MONTH)

您可以通过计算前一个月的last_day并添加一天来获得该月的第一天。这很尴尬,但我认为这比将日期格式化为字符串并将其用于计算更好。
select *from yourtable twhere t.date >= DATE_ADD(LAST_DAY(DATE_SUB(NOW(), INTERVAL 2 MONTH)), INTERVAL 1 DAY) and t.date <= DATE_SUB(NOW(), INTERVAL 1 MONTH)