我有一个表A,里面有5000W记录的数量,我需要把表A的这些数据拿过来,分别放到表
B,表C和表D中,插入前需要判断,如果表B,C,D中存在记录,则需要先删除这条记录
,再把表A的新记录插入进去,请问如何高效的处理完这5000W条数据,我写了一个小程
序,一天就处理了50W条,速度好慢,有高手指点下吗?
先删除,再插入行不行
比如,先处理A和B,删除A中的并且在B中的记录
在处理A和C、A和D,
处理完了再分别插入
这样可以吗?
应该不会那么慢
打一些时间节点,然后分析具体比较耗时的操作位置,是读取数据库,还是分析重复,还是删除,插入数据。
数据量太大,不建议直接关联表在表上操作,
可以先用表B,C,D与A表关联,查询出存在的记录,并将这些记录从表B,C,D中挪到其他地方备份起来,
再将A表中数据用LOAD DATA INFILE方法放入表B,C,D中。
LOAD DATA INFILE用法详解 http://www.data.5helpyou.com/article408.html