鍍金池/ 問答/PHP  數(shù)據(jù)庫(kù)/ php 導(dǎo)入數(shù)據(jù)怎么優(yōu)化

php 導(dǎo)入數(shù)據(jù)怎么優(yōu)化

上傳excel,解析數(shù)據(jù),假如有一千條數(shù)據(jù)
系統(tǒng)要去循環(huán)查詢每條數(shù)據(jù)是不是在數(shù)據(jù)庫(kù)已經(jīng)存在相同的記錄,不存在添加,存在不處理
怎么才能優(yōu)化下

回答
編輯回答
你好胸

不要一條一條的去查數(shù)據(jù)庫(kù)

如果數(shù)據(jù)庫(kù)的量不大,可以先查出來,和這1000條數(shù)據(jù)進(jìn)行比對(duì),不相等的記錄下來,這些就是你要添加的數(shù)據(jù)

如果數(shù)據(jù)庫(kù)量很大,可以將這1000條數(shù)據(jù)統(tǒng)一去查一次,比如說他們關(guān)聯(lián)是ID,可以用 in 或 not in 去查相對(duì)應(yīng)的ID

2018年4月2日 12:48
編輯回答
款爺

使用replace into 試試唄。如果存在相同的數(shù)據(jù)會(huì)把之前的替換更新掉,如果不存在則就插入了

2018年2月11日 11:17
編輯回答
遲月

可以用數(shù)組的交集和差集哦!
數(shù)據(jù)庫(kù)存在的 ---- 你上傳的文件中也存在的 === 交集
數(shù)據(jù)庫(kù)中不存在的---你上傳的文件中存在的 ====差集
差集是需要寫入是數(shù)據(jù),交集不用管

2018年9月18日 01:18
編輯回答
生性

把單條查詢和單挑添加轉(zhuǎn)為批量查詢和批量添加,一樓說的很清楚啦

2018年8月24日 14:04