我们可以创建一个分区范围不按分区键排序的表吗? 例如。
PARTITION 00001 ENDING AT ('2018-07-02') INCLUSIVE
PARTITION 00002 ENDING AT ('2018-07-03') INCLUSIVE
PARTITION 00003 ENDING AT ('2018-07-08') INCLUSIVE
PARTITION 00004 ENDING AT ('2018-07-05') INCLUSIVE
PARTITION 00005 ENDING AT ('2018-07-20') INCLUSIVE
这是用于在DB2中创建分区表的有效DDL吗?
答案 0 :(得分:2)
否,分区必须“按顺序”。 See here以获得更多详细信息(搜索partition-element
)。我突出显示了相关部分。
键值必须遵循以下规则:
第一个值对应于键的第一列,第二个值对应于键的第二列,依此类推。使用的值少于 键中的列与使用最高的列具有相同的效果 或所忽略列的最小值,具体取决于它们是否 是上升还是下降。
任何分区中键的最大值必须小于下一个分区中键的最大值才能升序 例。
强制执行为最后一个分区指定的值。为最后一个分区指定的值是键的最大值 可以放在桌子上任何大于该值的键值 为最后一个分区指定的值超出范围。
如果所有值的串联都超过255个字节,则仅考虑前255个字节。
如果键包含ROWID列或具有基于ROWID数据类型的不同类型的列,则该常量的17个字节为 考虑为相应的ROWID列指定的内容。
- 如果为分区键指定了空值并且键正在升序,则除非指定MAXVALUE,否则将返回错误。如果 键为降序,除非MINVALUE为 指定。