sqlserver 2008 R2 分区表测试

有一张表期中有100多w条数据 程序执行起来比较慢,想用分区表的办法,使查询变快一些。

方案如下

--查看分区信息
SELECT * FROM sys.partition_range_values

--查看分区架构
select * from sys.partition_schemes

--select * from Day_CaiDan_Elderly

--分区函数 :按每半年分一次
CREATE PARTITION FUNCTION MonthDateRange(datetime)
 AS RANGE Right FOR VALUES
(
'2013-01-31 00:00:00.000','2013-07-01 00:00:00.000','2014-01-01 00:00:00.000'
)
--分区方案
CREATE PARTITION SCHEME MonthDateRangeScheme
AS
PARTITION MonthDateRange
ALL TO ([PRIMARY])

-- 下面是测试时间
declare @datetime1 as datetime
declare @datetime2 as datetime

select @datetime1 = GETDATE()
select * from Day_CaiDan_Elderly where DCTime >= '2012-02-01 00:00:00.000' and DCTime < '2012-04-01 00:00:00.000'  
select @datetime2 = GETDATE()

select @datetime2 - @datetime1

分区后表比现有的查询快 0.08秒左右。

不知是否可行,先记下来,
  
 

原文地址:https://www.cnblogs.com/xiajing12345/p/3316489.html