Задавайте вопросы, мы ответим
Вы не зашли.
DATE_FORMAT(a.add + INTERVAL a.period a.periodname,' %d-%m-%Y') - как?
Неактивен
Синтаксис INTERVAL не подразумевает использование переменных вместо единицы измерения. Проще перевести в секунды
Неактивен
а как еще можно такое DATE_FORMAT(NOW(),'%d-%m-%Y') >= DATE_FORMAT(a.add + INTERVAL a.period a.periodname,'%d-%m-%Y') реализовать ?
Неактивен
Перебором внутри IF, наподобии такого:
Неактивен
БОЛЬШОЕ СПАСИБО за то что уделили время!
Отредактированно saharin (06.08.2014 00:51:06)
Неактивен
а почему может некорректно отрабатывать сравнение?
DATE_FORMAT(NOW(),'%Y-%m-%d') >= DATE_FORMAT(a.endperiod,'%Y-%m-%d') - вот например сработало нормально!
а если формат %d-%m-%Y то вообще непонятно сравнивает (по месяцам вроде) - то есть выдает хаотичный результат какой то, даты меньше чем a.endperiod
Отредактированно saharin (06.08.2014 01:12:33)
Неактивен
Сравнивает как строки: сначала первый символ, если равны, то второй и.т.д.
Неактивен
подскажите еще пожалуйста как правильно сделать такое сравнение?
Неактивен
Вы привели вполне рабочий вариант: DATE_FORMAT(NOW(),'%Y-%m-%d') >= DATE_FORMAT(a.endperiod,'%Y-%m-%d')
Неактивен
я думал мускул именно даты сравнивает, а оказалось как строки 0_о
тогда наверное лучше переводить дату в метку времени и потом уже сравнивать..
БОЛЬШОЕ СПАИБО еще раз!
Отредактированно saharin (06.08.2014 01:21:34)
Неактивен