请问怎么按照求模分区 一个表table_a有个字段 usid,我想创建一个分区表,分为十个区,按照usid除以10的余数来分类 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 -- 在你想要这样做之前,首先问自己:为什么要这样做?-- 为什么要这样做?你的查询会经常用到 mod(usid,10)条件吗? 这样我可以比较均匀的分布的同时,知道具体的那个usid在那个分区里 -- 思路:只能是额外添加一个名为 mod_uuid 字段,此字段的值在插入时就添加为 mod(uuid,10)的值!-- 然后根据 mod_uuid 字段去创建 list 分区!-- 创建分区的类似代码如下:create table table_a( usid number(18,0), mod_usid number(2) )partition by list(mod_usid)( partition part_0 values(0), partition part_1 values(1), partition part_2 values(2), partition part_3 values(3), partition part_4 values(4), partition part_5 values(5), partition part_6 values(6), partition part_7 values(7), partition part_8 values(8), partition part_9 values(9)); -- 思路:只能是额外添加一个名为 ……[/Quote]谢谢,新增了一个思路不过似乎还有点问题,已有新增分区,比如从10变成30的时候,需要修改表内数据;还有也需要多增加一个分区索引。不知道还有不由更好的办法 ORACLE,多字段索引跟但字段索引的效率 会一样吗 如何取得指定年月的最后一条记录? 用asp 怎么从oracle中读取clob格式的数据? 同样的SQL,在三个环境中跑,两个OK,另外一个会抱错(00972标示过长) 求教一条SQL语句(关于Group By) orcale 中的数据类型中 varchar2 和varchar 有什么区别??? 这两个查询哪个效率能高一点!! 请问Oracle 9i里面怎么做动态表单? 高分求sql的返回值问题 谁知道oracle 9i person启动数据库的口令? oracle 在toad中怎么执行多条DDL语句 怎么知道导入的dmp文件名
-- 为什么要这样做?你的查询会经常用到 mod(usid,10)条件吗?
这样我可以比较均匀的分布的同时,知道具体的那个usid在那个分区里
-- 思路:只能是额外添加一个名为 mod_uuid 字段,此字段的值在插入时就添加为 mod(uuid,10)的值!
-- 然后根据 mod_uuid 字段去创建 list 分区!-- 创建分区的类似代码如下:
create table table_a(
usid number(18,0),
mod_usid number(2)
)
partition by list(mod_usid)
( partition part_0 values(0),
partition part_1 values(1),
partition part_2 values(2),
partition part_3 values(3),
partition part_4 values(4),
partition part_5 values(5),
partition part_6 values(6),
partition part_7 values(7),
partition part_8 values(8),
partition part_9 values(9)
);
[/Quote]
谢谢,新增了一个思路
不过似乎还有点问题,已有新增分区,比如从10变成30的时候,需要修改表内数据;还有也需要多增加一个分区索引。不知道还有不由更好的办法