2010-02-24 74 views
2

我遇到了新闻和新闻档案处于不同表格中的情况。
鉴于这些表包含许多记录,并且两者共享完全相同的结构,将它们分开而不是将它们标记为归档的标志仍然很聪明?不同表格中的新闻和新闻档案

回答

2

如果没有存档,您的新闻表会更快。你必须问自己,如果两者经常在同一个查询中被击中。如果他们不是,那么将它们分开是有意义的。

还必须问自己什么档案实际上意味着什么? 1岁,2岁。我猜这只是一个标志,要么显示在新闻页面或新闻存档页面上。如果你合并成一个表,也许你可以使用逻辑> 1岁是归档。

您也可以创建一个视图,将两个表联合在一起。

+0

@Ryu:按UNION,你的意思是UNION ALL。 – 2010-02-24 19:31:10

+0

他们使用相同的查询,但到目前为止他们被分成不同的表和不同的存储过程。我不会去改变它,因为它是一个遗留系统,我没有编程自己,但我问了这个问题,所以我会知道如何设计更多的项目。 如果我加入这些表格,“选择”存档的新闻或新闻会更快吗?如果我将dateCreated字段作为主键之一,会有帮助吗? – 2010-02-24 23:11:08

+0

@the_drow dateCreated在聚集索引中很好,但不是主键。 – Ryu 2010-02-24 23:17:53

1

您还可以考虑对文章是否标记为归档进行分区。这样至少你可以改变结构而不用记住去修复另一个表,而且你仍然可以从仅包含活动记录的分区中获得更快的性能。但是,如果系统已经就位并且正在运转,那么最好的方法就是和它一起生活。如果我是您的客户,除非目前的结构出现问题,否则我不会支付您进行此项更改。

+0

我并没有要求这改变遗留系统。这是我现在问的是否应该避免。 – 2010-02-24 23:12:10