且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

mySQL 选择下个月到期的记录

更新时间:2022-11-13 20:49:18

日期是否存储在实际日期或日期时间字段中?如果它在 char/varchar 字段中,您将无法使用 BETWEEN 语法,因为 mysql 只会将它们视为固定字符串.

I am trying to select all records in a table which have a date between the current date and 1 month ahead.

The date is stored like this DD-MM-YYYY

And the query I have tried:


SELECT * from tablename WHERE renewalDate BETWEEN DATE_FORMAT(CURDATE(),GET_FORMAT(DATE,'EUR')) AND  DATE_ADD(DATE_FORMAT(CURDATE(),GET_FORMAT(DATE,'EUR')), INTERVAL 1 MONTH)

But this does not return the correct results.

Is the date stored in an actual date or datetime field? If it's in a char/varchar field, you won't be able to use the BETWEEN syntax, as mysql will just treat them as fixed strings.