- 分区函数:告诉数据库管理系统以什么方式对表进行分区
分区方案:将分区函数生成的分区映射到文件组中
使用分区方案创建表 - 创建分区函数(作用域仅限于创建该分区函数的数据库)
- 在int列上创建左侧分区函数
默认LEFT左侧分区
1 create partition function part1(int) 2 as range left for values(1, 100, 1000) 3 --列coll使用此分区函数的表进行分区: 4 --coll<=1, coll>1 and coll <=100, coll > 100 and coll <= 1000, coll > 1000
1 create partition function part1(int) 2 as range right for values(1, 100, 1000) 3 --coll<1, coll>=1 and coll<100, coll>=100 and coll<1000, coll>=1000
在datetime列上创建右侧分区函数,分成12个分区,每个分区对应一年中的一个月的值1 create partition function part2(datetime) 2 as range right for values 3 ( 4 '20030201','20030301','20030401','20030501', 5 '20030601','20030701','20030801','20030901', 6 '20031001','20031101','20031201' 7 )
- 创建分区方案
1 create partition function pppf1(int) 2 as range left for values(100); 3 go 4 create partition scheme ppps1 5 as partition pppf 6 to(group1,group2);
1 --创建一个将所有分区映射到同一文件组的分区方案 2 create partition function pppf4(int) 3 as range left for values(100); 4 go 5 create partition scheme ppps4 6 as partition pppf4 7 all to(group1);
分区数少于指定的文件组数,第一个未分配的文件组将标记为NEXT USED1 create partition function pppf5(int) 2 as range left for values(100); 3 go 4 create partition scheme ppps5 5 as partition pppf5 6 to(group1,group2,group3,group4);
-
1 --首先创建一个分区函数,将表或索引分为四个分区。然后创建一个分区方案,最后创建使用此分区方案的表。 2 create partition function ppff2(int) 3 as range left for values (1, 100, 1000); 4 go 5 create partition scheme ppss2 6 as partition ppff2 7 to (group1,group2,group3,group4); 8 go 9 create table partitiontable 10 ( 11 col1 int, 12 col2 char(10) 13 ) 14 on ppss2(col1);