sybase 如何表分区

sybase 如何表分区,第1张

“alter table”与“create table”的分区语法相同,可以: 将单个分区修改为多分区 在改变分区类型的同时改变分区的数量 改变键值和边界值 改变分区所在的段 仅有范围(range)和列表(list)分区可以增加分区 注意修改分区类型等时,ASE系统要将表中的数据按照修

间隔分区只适用于range类型的分区。

CREATE TABLE interval_sales

( prod_id NUMBER(6)

, cust_id NUMBER

, time_id DATE

, channel_id CHAR(1)

, promo_id NUMBER(6)

, quantity_sold NUMBER(3)

, amount_sold NUMBER(10,2)

)

PARTITION BY RANGE (time_id)

INTERVAL(NUMTOYMINTERVAL(1, 'MONTH'))

( PARTITION p0 VALUES LESS THAN (TO_DATE('1-1-2008', 'DD-MM-YYYY')),

PARTITION p1 VALUES LESS THAN (TO_DATE('1-1-2009', 'DD-MM-YYYY')),

PARTITION p2 VALUES LESS THAN (TO_DATE('1-7-2009', 'DD-MM-YYYY')),

PARTITION p3 VALUES LESS THAN (TO_DATE('1-1-2010', 'DD-MM-YYYY')) )

上面的例子表示除了上面已经定义的分区以外,每个月只要有数据,就会新建一个分区。

INTERVAL(NUMTOYMINTERVAL(1, 'MONTH')) 按月

INTERVAL (NUMTODSINTERVAL(1,’day’)) 按天

INTERVAL(NUMTOYMINTERVAL(1, 'YEAR')) 按年

mysql数据库KEY分区用法

按照KEY进行分区类似于按照HASH分区,除了HASH分区使用的用户定义的表达式,而KEY分区的

哈希函数是由MySQL

服务器提供。MySQL

簇(Cluster)使用函数MD5()来实现KEY分区对于使用其他存储引擎的表,服务器使用其自己内部的

哈希函数,这些函数是基于与PASSWORD()一样的运算法则。

“CREATE

TABLE

...

PARTITION

BY

KEY”的语法规则类似于创建一个通过HASH分区的表的规则。它们唯一的区别在于使用的关键字是KEY而不是HASH,并且KEY分区只采用一个或多个列名的一个列表。

通过线性KEY分割一个表也是可能的。下面是一个简单的例子:

CREATE

TABLE

tk

(

col1

INT

NOT

NULL,

col2

CHAR(5),

col3

DATE

)

PARTITION

BY

LINEAR

KEY

(col1)

PARTITIONS

3

在KEY分区中使用关键字LINEAR和在HASH分区中使用具有同样的作用,分区的编号是通过2的幂(powers-of-two)算法得到,而不是通过模数算法。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/bake/11752116.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-18
下一篇2023-05-18

发表评论

登录后才能评论

评论列表(0条)

    保存