2015-04-29 2 views
2

Мне нужно обновить и добавить один день всех дат, которые у меня есть в данных bse, таблица - это тележки, и она возникла только для строк с choi_id = 1030;Добавить один день в поле datetime в таблице mysql

CARTS - ID - имя - choi_id; - вставлено

Я попытался для:

UPDATE carts SET inserted = inserted + 1 where choi_id = 1030; 

ответ

2

Вы можете попробовать это:

UPDATE carts 
    SET `inserted` = DATE_ADD(`inserted` , INTERVAL 1 DAY) 
WHERE `choi_id` = 1030; 

Функция DATE_ADD MySQL добавляет заданный интервал времени к дате, секундам, минутам, месяцам, годам и т. д. Ваш ввод - это поле datetime, а не целое число то +1 не работает для этого.

Смотрите здесь документ: DATE_ADD

+2

вставлен = вставлен + 1 тоже не работает? – antfceo

+0

ваше поле является типом даты, а не числом. – obrvo

+1

благодарит за ответ – antfceo

1

Вы можете сделать это

UPDATE carts 
SET inserted = inserted + INTERVAL 1 DAY 
where choi_id = 1030; 
0
UPDATE carts 
    SET `inserted` = DATE_ADD(`inserted` , INTERVAL 1 DAY) 
WHERE `choi_id` = 1030; 

Это работает. Существуют типы данных MySQL, вы не можете рассматривать дату-время как число.

Смежные вопросы