php 导入数据怎么优化

上传excel,解析数据,假如有一千条数据
系统要去循环查询每条数据是不是在数据库已经存在相同的记录,不存在添加,存在不处理
怎么才能优化下

阅读 2.8k
4 个回答

不要一条一条的去查数据库

如果数据库的量不大,可以先查出来,和这1000条数据进行比对,不相等的记录下来,这些就是你要添加的数据

如果数据库量很大,可以将这1000条数据统一去查一次,比如说他们关联是ID,可以用 in 或 not in 去查相对应的ID

把单条查询和单挑添加转为批量查询和批量添加,一楼说的很清楚啦

使用replace into 试试呗。如果存在相同的数据会把之前的替换更新掉,如果不存在则就插入了

可以用数组的交集和差集哦!
数据库存在的 ---- 你上传的文件中也存在的 === 交集
数据库中不存在的---你上传的文件中存在的 ====差集
差集是需要写入是数据,交集不用管

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题