分区表改造问题

我们ob目前有一个表,目前是普通表,之所以没分区(本来要按照时间字段分区的),但因为ob里要求分区键要是主键的一部分,而我们的时间字段如果放到主键里,那原来的主键(id列)就变为id+时间字段列,就没办法保证唯一。 我们现在能想到的就是如果分区的话,那还是id+时间字段当主键,然后我们再在id列上创建一个唯一索引。 我想问的是,除了这个方法外,还有其他方法吗

2 个赞

你直接走id查询,它还是根据主键索引去查找啊,唯一性哪里改变了?

联合主键又不会改变你原有id的唯一性

1 个赞

不互相关联啊,唯一键还是原来的唯一键

1 个赞

对ID再进行逻辑拆分成多个字段

1 个赞
  1. 您的 ID 是 怎么生成的 呢 ??? 详细介绍下。
  2. 您把 您的表结构发下吧。
  3. select count(distinc id) from table_name. select count(id) from table_name . 截图看下
1 个赞

:+1: :+1: :+1:

比如id列是一个业务上的订单id。

原来主键就是唯一的,怎么加个字段就不唯一呢

1 个赞

后进来的数据会可能造成不唯一

后进来的数据可能会造成不唯一

你原来主键就是ID,这个是唯一的,你再怎么做联合主键它也还是唯一啊

比如原来id列,后来加上date列一起做主键。是不是可以插入1,10点,1,11点,1,12点?
对于id列来说还唯一吗?哈