2014-10-05 2 views
0

У меня есть таблица с несколькими полями даты и времени.Обновление DATE полей даты и времени

Я создаю этот запрос для обновления даты записей.

UPDATE $wpdb->posts INNER JOIN $wpdb->arriba ON $wpdb->posts.ID = $wpdb->arriba.post_id SET $wpdb->posts.post_date = CURDATE(), $wpdb->posts.post_date_gmt = CURDATE(),$wpdb->posts.post_modified = NOW(),$wpdb->posts.post_modified_gmt = CURDATE() 

Запрос работает нормально, но don't сохранить время записи и и заменяет на 00:00:00

Как я могу изменить только дату и сохранения первоначального времени?

+0

Вам нужно будет добавить время к нему ... Так как '$ wpdb-> posts.post_date = CURDATE() + TIME ($ wpdb-> posts.post_date) ' –

ответ

0

Это немного сложно. Вероятно, самым простым способом является добавление дней. Таким образом, рассчитать количество дней, чтобы добавить и добавить, что многие дни:

UPDATE $wpdb->posts INNER JOIN 
     $wpdb->arriba 
     ON $wpdb->posts.ID = $wpdb->arriba.post_id 
    SET $wpdb->posts.post_date = $wpdb->posts.post_date + interval datediff(CURDATE(), $wpdb->posts.post_date) day; 
     $wpdb->posts.post_date_gmt = $wpdb->posts.post_date_gmt + interval datediff(CURDATE(), $wpdb->posts.post_date_gmt) day, 
     $wpdb->posts.post_modified = NOW(), 
     $wpdb->posts.post_modified_gmt = CURDATE(); 
Смежные вопросы