How to compare only day and month with date field in mysql?
For example, I've a date in one table: 2014-07-10
Similarly, another date 2000-07-10 in another table.
I want to compare only day and month is equal on date field.
I tried this format. But I can't get answer
select *
from table
where STR_TO_DATE(field,'%m-%d') = STR_TO_DATE('2000-07-10','%m-%d')
where id = "1"
解决方案
Use DATE_FORMAT instead:
SELECT DATE_FORMAT('2000-07-10','%m-%d')
yields
07-10
Here's your query re-written with DATE_FORMAT():
SELECT *
FROM table
WHERE DATE_FORMAT(field, '%m-%d') = DATE_FORMAT('2000-07-10', '%m-%d')
AND id = "1"