这应该是什么数据库字段?

时间:2010-04-02 09:44:45

标签: mysql database types

我有一个名为“Event”的表。列具有“持续时间” - 即该事件持续的时间。

这应该是什么数据库类型?整数? (几秒钟)?

将来,我会做以下的陈述:

If now() > event.duration  THEN don't display the event.

1 个答案:

答案 0 :(得分:0)

在MySQL中,有一种名为TIME的列类型,可用于存储持续时间:

  

MySQL以'HH:MM:SS'格式(或大小时值的'HHH:MM:SS'格式)检索并显示TIME值。 TIME值的范围可以从'-838:59:59'到'838:59:59'。小时部分可能太大,因为TIME类型不仅可以用来表示一天中的时间(必须小于24小时),还可以用于表示两个事件之间的经过时间或时间间隔(可能远大于24小时,甚至是负面的)。

请特别注意,该限制仅为839小时,因此如果您需要更多,您可能更愿意使用整数字段。

如果您只想获取短于特定持续时间的事件,可以使用WHERE子句执行此操作。例如,要仅获取持续时间少于10小时的事件:

SELECT * From Event WHERE Duration < '10:00:00'