1

我必须为数据库中的几乎每个表存储 2 个日期,例如tbl_clients tbl_users tbl_employers tbl_position tbl_payments tbl_quiz tbl_email_reminder等。

大多数时候我存储“date_created”和“date_modified”有时很少有额外的日期。

什么是在 MySQL 数据库性能方面存储日期的最佳方法(以后可能有很多客户的网站可能超过 500,000+)

选项 1:为每个表添加 2 列日期。

选项 2 :专门为日期创建表“ tbl_dates ”。

我在想选项 2 会更快,因为我只需要在一个特定页面上显示日期,例如“ report.php ”,对吗?

另外,我应该在“ tbl_dates ”中放多少列而不会使它太慢。

4

1 回答 1

0

对于一般情况(行创建和行修改时间戳),我会将它们放在与它们相关的同一个表中。否则,您会发现您需要的后续连接会比简单的方法更减慢您的查询速度。

在任何情况下,您都不想养成构建许多表都可以使用的“通用表”的习惯JOIN——这是因为理想情况下您将为每个关系创建外键,但如果某些行属于tbl_clients,一些到tbl_users...(等)。

诚然,您的 MySQL 引擎可能会阻止您使用外键 - 取决于您使用的是哪一个 - 但(至少对我而言)这一点是正确的。

于 2012-12-10T22:11:20.570 回答