mysql - mysql 中的纪元与日期和时间

标签 mysql

我有一个简单的问题。 哪种时间格式更适合存储在 mysql、epoch 或标准日期时间(人类可读格式)中。 关于 select 语句的速度,我想知道稍后在存储数百万行的表中哪种格式会更好。

最佳答案

你想要 unix 纪元。我做过很多极其庞大的 MySQL 数据库,其中之一是一个数据跟踪应用程序,它每天为一些用户记录数百万条记录。

epoch 优于 datetime 的原因:

  • int 仅为 4 个字节,而 datetime 为 8 个字节 - 更适合存储/内存并最终索引/性能。当您处理数百万行时,它真的很重要
  • 无论如何,大多数服务器端语言都需要从字符串格式转换为 int 格式,然后才能重新格式化数据
  • 不依赖于时区 - 使用 datetime 时,您需要转换未使用时区标识存储的字符串,但使用纪元时,您只需要知道转换为的时区

关于mysql - mysql 中的纪元与日期和时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21499504/

相关文章:

php - 通过 AJAX、PHP 和 MYSQL 从下拉列表更改文本框

python - SQLAlchemy session 和连接关系

mysql - 如何对数组中的特定字段进行分组?

php - 处理太多 mysql 连接的最佳实践

mysql - MySQL 中的 JSON_SET 和 JSON_EXTRACT 是原子的吗?

javascript - 内置 PhantomJs 和 php 吗?

mysql - 将表中的一行复制到另一行并在同一查询中插入一列的值

php - 为什么以下代码在 PHP 中上传文件时会抛出 undefined index ?

mysql - 未使用空间索引

mysql - SQL 查询建表错误