MySQL DATE_ADD INTERVAL - PullRequest
       6

MySQL DATE_ADD INTERVAL

2 голосов
/ 26 февраля 2012
    mysql_query("UPDATE tablename SET date = DATE_ADD(DATE(NOW() + INTERVAL 1 WEEK), INTERVAL 17 HOUR), INTERVAL 30 MINUTE)
        WHERE idevent = '2'")
or die(mysql_error());

Я хочу добавить 7 дней к дате, но настройку даты и времени вручную установить. У меня есть код выше, который работает в течение часа, но как только я добавляю минуты, он выдает ошибку, сообщая об ошибке синтаксиса SQL.

Есть идеи?

Ответы [ 3 ]

4 голосов
/ 26 февраля 2012

Вам нужно еще DATE_ADD() в начале этого выражения, так как вы делаете два дополнения.

mysql_query("UPDATE tablename SET date = DATE_ADD(DATE_ADD(DATE(NOW() + INTERVAL 1 WEEK), INTERVAL 17 HOUR), INTERVAL 30 MINUTE) WHERE idevent = '2'");
//-------------------------------------^^^^^^^^^^^^^^^^^^^^
0 голосов
/ 26 февраля 2012

Что мешает вам добавить 17*60+30 Minutes и сохранить код читабельным?

0 голосов
/ 26 февраля 2012

4 открыто '(' и 5 закрывается ')'. *. Дисбаланс 1001 *

...