单个列上的非重叠分段

对单个列创建非重叠分段的分段存储规则是:从分段消除的角度出发,首选的分段存储规则。

这种分布方案的优点在于,数据库服务器可以消除那些具有范围表达式和等式表达式查询的分段。 您应该在设计分段存储规则时满足这些条件。图 1 给出了这种类型的分段存储规则的示例。

图: 单个列上的非重叠分段的示例

...
FRAGMENT BY EXPRESSION
a<=8 OR a IN (9,10) IN dbsp1,
10<a AND a<=20 IN dbsp2,
a IN (21,22,23) IN dbsp3,
a>23 IN dbsp4;

您可以使用范围规则或基于单个列的仲裁规则来创建非重叠分段。 您可以使用关系运算符,以及 AND、IN、OR 或 BETWEEN。使用 BETWEEN 运算符时一定要小心。数据库服务器对 BETWEEN 关键字进行语法分析时,它包含了在值范围中指定的结束点。在您的表达式中应避免使用 REMAINDER 子句。如果使用 REMAINDER 子句,那么数据库服务器始终不能消除剩余分段。