我在orders表中有一个包含500,000条记录的SQL表。sql已经使用了5年,每年大约有100,000条记录被添加到数据库中。该表有大约30个字段,其中一个字段是"OrderDate“。查询只需要最近几个月的记录,最多过去12个月。因此,之前的所有记录都是无用的,并减慢了所有查询的速度。
查询很慢,需要3-4秒,同样的查询在几年前几乎是立即进行的。我必须一次加载并打印所有字段列。我是否可以让SQL忽略和不查看部分记录,假设2013年前有OrderDate的记录,或者前40万条记录,或者忽略某些记录而不删除它们?
发布于 2014-04-25 08:39:40
据我所知,你有两个选择:
发布于 2014-04-25 08:56:59
这是表分区的典型用法,但是我们不知道您使用的是哪种类型的SQL,因此我们不知道它是否支持它。为SQL版本添加标记(SQL Server?Oracle?)
https://stackoverflow.com/questions/23282035
复制相似问题