文章详情页
group-by - mysql group by 优化的问题
浏览:181日期:2022-06-14 17:40:23
问题描述
我有一张接近八千万条数据的彩虹表,然后里面有二十多万条的重复数据,我想使用GROUP BY 进行分组,但是使用了GROUP BY语句以后,mysql会生出一张零时表,而零时表,把我的硬盘全部沾满了,所以,求个办法,能帮去去处这重复的数据?
我的sql:
sql:
SELECT COUNT(id) FROM password WHERE length = 4 GROUP BY ciphertext
问题解答
回答1:不赞成用一条SQL语句来搞定这类问题,因为数据库耗不起。可以用程序来实现(比如写个Python脚本),步骤是这样的:
把表A(8千万行)复制一个表结构,产生一张空表B;
对B的ciphertext列做唯一索引;
遍历表A的每一行,插入到表B,可以用REPLACE或INSERT INTO ... ON DUPLICATE KEY UPDATE ...
校验表B的数据,如果结果正确,则删除表A,把表B重命名为表A。
相关文章:
1. javascript - 求一款靠谱点的移动端图片查看器插件,老司机速进!2. 就一台服务器,mysql数据库想实现自动备份,如何设计?3. html5 - weex H5端的使用,怎么跑起来?4. CSS3可否做出这个效果?5. html5 - vue.js中,如何对转义字符进行表达式判断?6. javascript - vue 动态改微信分享文案的问题7. 老哥们求助啊8. mysql - 现在已经使用CommandArgument取到t_ID的值,现在还想取t_Name的值一起放到cs文件中的sql语句中该怎么做9. html - 急求,能否用flex或者高端点的CSS来布局这个图呢?不想用浮动或定位了10. 为什么学习PHP
排行榜

网公网安备