这里的情景多个表,旧的数据库具有这种设计单表,相较于数百万条记录
dbo.Table1998
dbo.Table1999
dbo.Table2000
dbo.table2001
...
dbo.table2011
的,我合并所有的数据1998年至2011年在此表中dbo.TableAllYears
现在他们都通过“申请号”现在索引,具有列数相同(实际上是56列。)
当我试图
select * from Table1998
和
select * from TableAllYears where Year=1998
第一查询有139669行@13秒 而第二个查询具有相同的行数,但@30秒
所以对于你们,我是,我只是失去了一些东西或者多个表比单个表好?
如果你能告诉我们你正在使用哪个数据库服务器?和版本可以让你很好的答案。首先,您可以查看按年份或月份对表进行分区,并可能在要运行的查询类型上添加非聚集索引。对于SQL Server [从这里开始](http://msdn.microsoft.com/en-us/library/ms345146(SQL.90).aspx) – 2011-04-15 03:47:49
MS SQL Server 2008 r2 – Leary 2011-04-15 04:19:58
@ Sanjeevakumar - 对于迟到的回复抱歉,我没有注意到你的评论... – Leary 2011-04-15 04:20:44