Mysql覆蓋表中重復(fù)記錄的兩種實現(xiàn)方式
replace into 方式
前提條件
表中必須有主鍵或者唯一索引。
原理
根據(jù)主鍵或唯一索引找到相同主鍵的數(shù)據(jù),然后刪除原先的數(shù)據(jù),再添加新的數(shù)據(jù)。
如果表中沒有相同的主鍵或唯一索引,則相當(dāng)于insert into。
使用案例
# topic、partition、groupid是主鍵 replace into t_offset (`topic`, `partition`, `groupid`, `offset`) values(?,?,?,?)")
ON DUPLICATE KEY UPDATE 方式
前提條件
表中必須有主鍵或者唯一索引。
原理
根據(jù)主鍵或唯一索引找到相同主鍵的數(shù)據(jù),然后執(zhí)行update更新操作。
如果表中沒有相同的主鍵或唯一索引,則相當(dāng)于insert into。
使用案例
# userid是主鍵 insert into black_list(userid) value (?) on DUPLICATE KEY UPDATE userid = ?
總結(jié)
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
Win2008 R2 mysql 5.5 zip格式mysql 安裝與配置
這篇文章主要介紹了Win2008 R2 mysql 5.5 zip格式mysql 安裝與配置,需要的朋友可以參考下2017-06-06
淺析MySQL實現(xiàn)數(shù)據(jù)遷移與備份恢復(fù)的詳細(xì)指南
作為從?SQLServer?轉(zhuǎn)向?MySQL?的運維人員,理解?MySQL?的數(shù)據(jù)遷移和恢復(fù)機制至關(guān)重要,下面將系統(tǒng)介紹?MySQL?的數(shù)據(jù)遷移技術(shù)、備份恢復(fù)策略以及底層存儲原理,特別針對?Docker+Linux?環(huán)境下的運維實踐2025-06-06
利用pt-heartbeat監(jiān)控MySQL的復(fù)制延遲詳解
這篇文章主要給大家介紹了利用pt-heartbeat監(jiān)控MySQL的復(fù)制延遲的相關(guān)資料,文中詳細(xì)介紹了pt-heartbeat、監(jiān)控原理以及安裝過程等的相關(guān)內(nèi)容,對大家具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起看看吧。2017-06-06
MySQL 原理與優(yōu)化之Update 優(yōu)化
這篇文章主要介紹了MySQL 原理與優(yōu)化之Update 優(yōu)化,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價值,需要的小伙伴可以參考一下,希望對你的學(xué)習(xí)有所幫助2022-08-08
Windows server 2008 r2上安裝MySQL5.7.10步驟
這篇文章主要介紹了Windows server 2008 r2上安裝MySQL5.7.10的相關(guān)資料,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-01-01
MySQL重復(fù)數(shù)據(jù)提取最新一條技術(shù)方法詳解
在MySQL數(shù)據(jù)庫中清除重復(fù)數(shù)據(jù)是一項常見的任務(wù),下面這篇文章主要給大家介紹了關(guān)于MySQL重復(fù)數(shù)據(jù)提取最新一條的相關(guān)資料,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下2024-07-07

