亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何在MySQL中“插入,如果不存在”?

如何在MySQL中“插入,如果不存在”?

梵蒂岡之花 2019-05-27 13:37:12
如何在MySQL中“插入,如果不存在”?我開始使用谷歌搜索,發現這篇文章討論了互斥表。我有一張約有1400萬條記錄的表格。如果我想以相同的格式添加更多數據,有沒有辦法確保我想要插入的記錄不存在而不使用一對查詢(即,一個查詢要檢查,一個要插入是結果集是空)?unique對某個字段的約束是否保證insert如果它已經存在則會失?。克坪踔挥幸粋€約束,當我通過php發出插入時,腳本呱呱叫。
查看完整描述

3 回答

?
湖上湖

TA貢獻2003條經驗 獲得超2個贊

INSERT INTO `table` (value1, value2) SELECT 'stuff for value1', 'stuff for value2' FROM `table` WHERE NOT EXISTS (SELECT * FROM `table` 
      WHERE value1='stuff for value1' AND value2='stuff for value2') LIMIT 1

或者,外部SELECT語句可以引用DUAL以便處理表最初為空的情況:

INSERT INTO `table` (value1, value2) SELECT 'stuff for value1', 'stuff for value2' FROM DUAL
WHERE NOT EXISTS (SELECT * FROM `table` 
      WHERE value1='stuff for value1' AND value2='stuff for value2') LIMIT 1


查看完整回答
反對 回復 2019-05-27
  • 3 回答
  • 0 關注
  • 561 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號