2014-10-05 88 views
0

我有一个包含几个日期时间字段的表。更新日期时间字段的日期

我创建了这个查询来更新记录的日期。

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() 

查询工作正常,但鸵鸟政策保存记录的时间和00:00:00

我怎么只能修改的日期和保存原来的时间来取代?

+0

您需要的时候给它添加...所以,像'$ wpdb-> posts.post_date = CURDATE()+ TIME( $ wpdb-> posts.post_date)' – 2014-10-05 18:06:21

回答

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();