mysql避免插入重複資料

發表於2019-05-11

如果資料庫的資料很多,那麼必然影響到效率。
最近在做一個專案的時候,出現了這種情況,其實我們可以使用sql語句幫助我們達到目的。下面sql語句可以解決此問題:
        insert into question(path)



        select '$value' from DUAL where '$value'



        not in (select path from question)

因為我在PHP頁面中使用的sql語句,所以$value是我申明的變數.其中DUAL表示在虛擬表中進行查詢。這樣一句SQL就能保證我在requestion表中不會插入相同的path。
如果你還想比較其他資料是否有重複,那麼SQL語句的格式為:
        insert into tablename(表名)  (name1,name2.....)(要比較的欄位名) 



        select '$value1','$value2',......(要插入的真實資料) from DUAL where '$value1','$value2',......(要插入的真實資料)



        not in ( select name1,name2,....(要比較的欄位名) from tablename(表名))

很簡單吧?喵~~
評論(1)

相關文章