oksice 2022-04-27 22:37 采纳率: 80%
浏览 94
已结题

oracle主键id分布不均匀的大表怎么均匀等分多份

最近项目要做新老系统的数据割接,大表几千万数上亿的数据,不好一次性割接,想近似等分N份。开始我用id平均一下,结果发现主键id分布不均匀,相同间隔区间里,有的一两百万,有的五六百万数据,我还要等最多的那个区间割接完,做不到耗时差不多。并且表还挺多的,就有点伤脑筋,请教一下有啥妙招!

  • 写回答

2条回答 默认 最新

  • xtasce2012 2022-04-27 23:13
    关注

    1、举例:1亿条数据分成6份
    sql:
    select t.*,ntile(6)over(order by null) num from tablea t;

    2、把1亿数据的表取1000万条分成5份
    select t.*,ntile(6)over(order by null) num
    from
    (select * from tablea wehre rownum<=10000000) t;

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 5月6日
  • 已采纳回答 4月28日
  • 创建了问题 4月27日