MySQL:具有TIME数据类型的操作

时间:2012-04-27 13:55:47

标签: mysql time

假设我有一个这样的表:

create table reserved (
    id int(4) primary key,
    name varchar(30),
    quantity int(4),
    price int(8),
    info varchar(50),
    expiration_time time,
    contract_id varchar(50)
);

我在其中插入了几行,使用格式“HH:MM:SS”作为expiration_time字段。 现在我想通过添加50秒更新此字段:

update reserved set expiration_date=expiration_date+50 where id=1

当我有HH:MM并且SS不到10秒时,一切正常。但是像01:10:40这样的时间,加上50秒会导致01:11:00。我该怎么做才能解决这个问题?谢谢

1 个答案:

答案 0 :(得分:1)

ADDTIME()MAKETIME()一起使用:

UPDATE reserved
SET expiration_date=ADDTIME(expiration_date,MAKETIME(0,0,50))
WHERE id=1;