Фильтр по году или месяцу от mysql datetime cakephp
У меня есть таблица в базе данных в приложении CakePHP, которое имеет date
поле. Тип данных этого поля - DATETIME. Итак, в таблице показано так:
2013-08-10 13:34:45
Я хотел бы добавить условие в запросе find() для фильтрации по годам или месяцам. Чтобы отфильтровать по году, я могу использовать условие LIKE, чтобы сделать что-то вроде:
$condition = array(
'MyModel.date LIKE' => '%2013%'
);
Но как я могу фильтровать по месяцам? вышеуказанный подход не будет работать, потому что я могу иметь, например, что-то вроде этого в качестве даты:
2013-12-11 11:11:11
Если я сделаю LIKE "%11%", мои результаты будут неверными, потому что месяц предыдущей даты фактически ноябрь (или декабрь, если вы живете в Канаде). Итак, как я могу добавить условие в поле даты моей таблицы для фильтрации по правильному месяцу?
Заранее благодарю за любую помощь
1 ответ
WHERE MONTH(date)=6 // June
Вы также можете использовать YEAR
функция
WHERE YEAR(date) =2013