在这个SQL示例中,INTERVAL的用法是否正确?

时间:2013-02-16 21:35:36

标签: mysql sql datetime

我正在尝试追踪next列未来日期未更新的错误。

我在next列添加INTERVAL的用法是否正确?

UPDATE 
    `delay_shorts` AS `DelayShort`  
    SET 
        `DelayShort`.`delta` = 1, 
        `DelayShort`.`next` = '2002-04-14 21:31:01' + INTERVAL 5 SECOND, 
        `DelayShort`.`last_changed` = '2002-04-14 21:31:01'  
    WHERE `DelayShort`.`id` = 3

1 个答案:

答案 0 :(得分:5)

INTERVAL表达用于DATE_ADDDATE_SUB函数:

UPDATE 
    `delay_shorts` AS `DelayShort`  
    SET 
        `DelayShort`.`next` = DATE_ADD('2002-04-14 21:31:01', INTERVAL 5 SECOND) 
    WHERE `DelayShort`.`id` = 3

重要的是要注意INTERVAL的单位总是以单数形式表达:虽然你要添加5 second s ,您将其表达为5 SECOND