文章詳情頁
group-by - mysql group by 優(yōu)化的問題
瀏覽:133日期:2022-06-14 17:40:23
問題描述
我有一張接近八千萬條數(shù)據(jù)的彩虹表,然后里面有二十多萬條的重復(fù)數(shù)據(jù),我想使用GROUP BY 進(jìn)行分組,但是使用了GROUP BY語句以后,mysql會生出一張零時表,而零時表,把我的硬盤全部沾滿了,所以,求個辦法,能幫去去處這重復(fù)的數(shù)據(jù)?
我的sql:
sql:
SELECT COUNT(id) FROM password WHERE length = 4 GROUP BY ciphertext
問題解答
回答1:不贊成用一條SQL語句來搞定這類問題,因?yàn)閿?shù)據(jù)庫耗不起。可以用程序來實(shí)現(xiàn)(比如寫個Python腳本),步驟是這樣的:
把表A(8千萬行)復(fù)制一個表結(jié)構(gòu),產(chǎn)生一張空表B;
對B的ciphertext列做唯一索引;
遍歷表A的每一行,插入到表B,可以用REPLACE或INSERT INTO ... ON DUPLICATE KEY UPDATE ...
校驗(yàn)表B的數(shù)據(jù),如果結(jié)果正確,則刪除表A,把表B重命名為表A。
相關(guān)文章:
1. 致命錯誤: Class ’appfacadeTest’ not found2. html5 - 如何實(shí)現(xiàn)帶陰影的不規(guī)則容器?3. objective-c - iOS開發(fā)支付寶和微信支付完成為什么跳轉(zhuǎn)到了之前開發(fā)的一個app?4. css - 移動端字體設(shè)置問題5. python - 管道符和ssh傳文件6. javascript - 循環(huán)嵌套多個promise應(yīng)該如何實(shí)現(xiàn)?7. mysql優(yōu)化 - 關(guān)于mysql分區(qū)8. 請教各位大佬,瀏覽器點(diǎn) 提交實(shí)例為什么沒有反應(yīng)9. 前端 - IE9 css兼容問題10. javascript - ionic2 input autofocus 電腦成功,iOS手機(jī)鍵盤不彈出
排行榜

熱門標(biāo)簽