MySQL存储持续时间 - 数据类型?

标签 mysql time types duration

我需要计算用户在网站上花费的时间。注销时间和登录时间之间的差异给了我类似“X先生在网上花了4小时43分钟”这样的信息。所以为了存储 4 小时 43 分钟,我这样声明: duration 时间不为空

这是有效的还是更好的存储方式?我需要存储在数据库中,因为我还有其他计算需要将其用于 + 其他用例。

最佳答案

将其存储为整数秒将是最好的方法。

  • UPDATE 将简洁明了 - 即 duration = duration + $increment
  • 正如 Tristram 所说,有 limitations使用 TIME 字段 - 例如"TIME 值的范围可以从 '-838:59:59''838:59:59'"
  • 天/小时/分钟/秒的显示格式不会被硬编码。
  • 使用整数“秒数”字段时,您的其他计算的执行几乎肯定会更清晰。

关于MySQL存储持续时间 - 数据类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4498513/

相关文章:

Mysql 选择行并限制不同列

php - 从远程服务器连接到 MySQL 的本地实例

php - 在 mysql 数据上使用 eval,我的代码是否容易受到攻击,如果是的话,有什么更好的选择

mysql - JSON 打印时带有反斜杠

datetime - 处理亚秒精度 UTC 时间算术中的闰秒

python - 是否可以使 `type` 的输出返回不同的类?

c# - 为什么静态类被认为是 “classes” 和 “reference types” ?

javascript - 使用 moment.js 转换 XML 解析时间和日期的时区

javascript - 删除数组的 "this"索引不起作用

performance - 对 Julia 中的类型声明感到困惑