av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

mysql - 怎么能快速地分表

瀏覽:103日期:2022-06-17 18:03:27

問(wèn)題描述

在sqlserver中現(xiàn)在在有一個(gè)批次碼表a,一個(gè)具體的碼表bb表里面有幾千萬(wàn)條數(shù)據(jù),查的時(shí)候太慢,現(xiàn)在要將碼表分表,每個(gè)表最好不超過(guò)500萬(wàn),但是同一個(gè)一個(gè)批次的碼,要放在同一個(gè)表上。.因?yàn)閍表有數(shù)量,我本來(lái)打算手動(dòng)select top n sum(num) a,只要接近500萬(wàn),就記錄n,然后insert into 分表 select b where p_id in(select top n sum(num) a).但是in的話,太慢了,而且?guī)浊f(wàn),分500萬(wàn)一個(gè)表,我要手動(dòng)操作十多次,有沒(méi)有什么方法可以簡(jiǎn)單快捷地把表根據(jù)該字段自動(dòng)分表了?

問(wèn)題解答

回答1:

看題主的描述感覺(jué)還沒(méi)到達(dá)需要分表的地步,mssqlserver性能不至于這么差吧?

建議貼出慢sql和表的ddl語(yǔ)句,分析一下慢的原因。

回答2:

你可以試試用row_number

;WITH code(BatchID,ID)AS( SELECT 1,1 UNION ALL SELECT 1,2 UNION ALL SELECT 1,3 UNION ALL SELECT 1,4 UNION ALL SELECT 2,1 UNION ALL SELECT 2,2 UNION ALL SELECT 2,3 UNION ALL SELECT 2,4 )SELECT ROW_NUMBER()OVER(ORDER BY BatchID,ID) AS [LineNo] ,*FROM code AS c

LineNo BatchID ID-------------------- ----------- -----------1 1 12 1 23 1 34 1 45 1 56 2 17 2 28 2 39 2 4總體的數(shù)據(jù)可以根據(jù)LineNo來(lái)計(jì)算行數(shù)

相關(guān)文章:
主站蜘蛛池模板: 午夜精品视频在线 | 亚洲福利专区 | 91极品视频 | 国产成人在线免费视频 | 日韩欧美综合 | 激情做爰呻吟视频舌吻 | 91午夜精品亚洲一区二区三区 | 免费成人黄色网址 | 在线日韩视频 | 日韩欧美黄色 | 久久精品视 | 91国内精品 | 欧美一区二区三区在线 | 亚洲高清在线观看 | 一级黄色av| 久久精品一区二区三区四区五区 | 欧美日韩黄 | 美女久久久久久 | 毛片网站大全 | 在线观看欧美日韩视频 | 午夜激情视频在线观看 | 国产吃瓜黑料一区二区 | 黄色精品视频 | 日韩精品一区二区三区免费视频 | 精品少妇一区二区三区免费观 | www.毛片| 国产精品手机在线观看 | 亚洲精品18在线观看 | 一级黄色性生活片 | 一级片在线视频 | 亚洲h视频 | 国产美女视频 | 97免费在线视频 | 国产裸体永久免费视频网站 | 小sao货撅起屁股扒开c微博 | 麻豆三级视频 | 日韩精品网站 | 久久久97 | 欧美一区二区三 | 精品欧美一区二区精品久久 | 亚洲精品黄|