存储持续时间在MySQL中

时间:2010-09-07 10:18:24

标签: mysql

如果有3种可能性,将活动持续时间存储在MySQL表中的最佳方法是什么:

活动持续一整天 活动仅持续半天 用户以小时:分钟

指定长度

用户界面有一个组合框(全天/半天/手动 - >这里有一小时:分钟选择器出现)。

我正在考虑将持续时间以分钟为单位存储在数据库中。并用240分钟替换全天480分钟,半天。

但我不太喜欢这个解决方案,因为在前端我需要检查持续时间,例如,如果它是480,则将组合框设置为全天。

附加字段类型怎么样: 0 - 全天 1 - 半天 2 - 手动

想知道更好/更清洁的解决方案是什么,或者是否有更好的解决方案。

谢谢, 马丁

2 个答案:

答案 0 :(得分:1)

使用分钟是一个更好的解决方案,即使你必须在前端排队。

从存储角度来看它更清晰(一列而不是重定向到第二列进行手动设置),如果要求稍后更改(例如1/4天,2天),则可以更灵活。

答案 1 :(得分:0)

我会使用一个列来存储时间段的分钟(甚至几秒)。

您可能需要考虑的另一种显示方法是允许用户使用dhm后缀指定他们想要的任何时间段。例如

'1d 4h 2m'