添加一次到另一个mysql

时间:2015-04-08 10:34:47

标签: mysql

在MySQL中有没有我可以设置一个列到达60时继续?目前我说7.45小时,我想加20分钟,我得到7.75。该列设置为decimal。我尝试将其设置为time,但它增加了我不需要的秒数。

2 个答案:

答案 0 :(得分:1)

好的选择是使用Time数据类型,然后如果你不需要那么只丢弃秒。 当您需要在该领域进行任何计算时,它将在未来帮助您。

您可以使用ADDTIME在查询中添加时间列中的时间,如下所示。

SELECT ADDTIME(YourColumn,'0:20') FROM YourTable;

你也可以使用TIME_FORMAT来获得所需的输出(例如丢弃秒数)

SELECT TIME_FORMAT(YourColumn,'%H:%i') FROM TableName;

答案 1 :(得分:0)

我强烈建议您不要将decimal用于您要执行的操作,而是使用time代替。

使用time,您可以使用许多日期和时间功能,例如添加分钟。

您的问题有多种解决方案。

  1. 使用addtime()函数:

    update tablename
    set timecolumn = addtime(timecolumn, '00:20:00');
    
  2. 使用间隔:

    update tablename
    set timecolumn = timecolumn + interval 20 minute;
    
  3. 使用date_add()和interval:

    的组合
    update tablename
    set timecolumn = date_add(timecolumn, interval 20 minute);
    
  4. 来源:http://dev.mysql.com/doc/refman/5.1/en/date-and-time-functions.html