2015-11-19 58 views
1

我想爲每個DATE值添加7天。當我添加7天到日期「2015-11-19」它的工作,我的新值是「2015-11-26」,但是當我將它添加到「2015-11-26」日期值變成「0000 -00-00" 這是我的查詢:如何在DATE列中添加日期超過下個月的日期?

UPDATE events SET events.event_date = DATE(events.event_date + 7) 

只是注意到當我使用一個查詢:

UPDATE events SET events.event_date = DATE(events.event_date , interval 7 day) 

我得到這些錯誤:

Unrecognized keyword. (near "interval" at position 62) 
Unexpected token. (near "7" at position 71) 
Unexpected token. (near ")" at position 72) 

回答

2

使用DATE_ADD(Date,INTERVAL 45 DAY)

這樣

UPDATE events SET events.event_date =DATE_ADD(events.event_date,INTERVAL 7 DAY) 
+0

謝謝你的工作。 –

2

您需要使用DATE_ADD功能從MySQL。

的鏈接將DATE_ADD()

因此該查詢

UPDATE events SET events.event_date = DATE_ADD(events.event_date , interval 7 day)

1

這第二個參數使得DATE沒有意義的。該功能只需要一個參數。也許你想要的是DATE_ADD,而這需要兩個參數。

您既可以做DATE(events.event_date + INTERVAL 7 DAY)也可以做DATE_ADD(events.event_date, INTERVAL 7 DAY)。兩者在語義上相同。