【发布时间】:2014-04-01 22:11:29
【问题描述】:
我定义了几个数据库表,大致是这样的:
为了快速运行查询,其中按时间顺序检索 Person 的 MailMessages,无论 MailAccount 发送到什么,我想要一个 MailMessage 表的索引,按 (PersonId ,接收时间)。这意味着在 MailMessage 表中添加一个冗余的 PersonId 列,如下所示:
...或者是吗?有没有更简洁的方法来做到这一点?如果不是,最好将 PersonId 设为 MailMessage 表中的外键,还是不应该这样做,因为它在概念上不是外键,而只是用于 (PersonId, ReceivedTime) 索引的列?
【问题讨论】: