Php 在这个MySQL数据库中,日期和时间应该有自己的表吗?

Php 在这个MySQL数据库中,日期和时间应该有自己的表吗?,php,mysql,database-design,database-performance,Php,Mysql,Database Design,Database Performance,在任何一天,一个博客上都可能有好几条文章。因此,我有两个选项(使用MySQL和PHP): 为entries表提供一个日期/时间戳列,并重复日期和时间 创建三个表:条目、日期和时间以及内部联接 这似乎是一个完全愚蠢的问题,但我正在考虑与这么多内部联接是否有任何性能增益/损失相比,选项A会导致多大的“膨胀” 例如: 如果每天有两个人在同一时间发布,那么数据库中每年将有730个实例(闰年为732个!)。这是否足以保证索引和连接三个表?选项a。绝对正确。选项B很有意义。你必须有一个指向其他表的索引。

在任何一天,一个博客上都可能有好几条文章。因此,我有两个选项(使用MySQL和PHP):

  • 为entries表提供一个日期/时间戳列,并重复日期和时间
  • 创建三个表:条目、日期和时间以及内部联接
这似乎是一个完全愚蠢的问题,但我正在考虑与这么多内部联接是否有任何性能增益/损失相比,选项A会导致多大的“膨胀”

例如:


如果每天有两个人在同一时间发布,那么数据库中每年将有730个实例(闰年为732个!)。这是否足以保证索引和连接三个表?

选项a。绝对正确。选项B很有意义。你必须有一个指向其他表的索引。最好将日期和时间与其引用的数据和所属数据放在同一个表中。@juergen d谢谢。为什么?示例中的时间不是唯一的。@KIKO软件。是什么让它变得更好?是索引吗?谢谢,时间戳是长整数;即使有一个外部表,您仍然需要旧的外键。。。整数。重复的次数是一样的。