最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

mysql insert 存在即不插入語法說明

 更新時間:2022年03月25日 09:17:05   作者:954L  
這篇文章主要介紹了mysql insert 存在即不插入語法說明,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

insert 存在即不插入語法

介紹三種方式

第一種:replace into

replace into table(id, name) values(1, '張三') ;
/*或者*/
replace into table(id, name) select 1, '張三' ;

replace into 跟 insert 功能類似。

不同點在于:replace into 首先嘗試插入數(shù)據(jù)到表中

1.如果發(fā)現(xiàn)表中已經(jīng)有此行數(shù)據(jù)(根據(jù)主鍵或者唯一索引判斷)則先刪除此行數(shù)據(jù),然后插入新的數(shù)據(jù)。

2.否則,直接插入新數(shù)據(jù)。

要注意的是:插入數(shù)據(jù)的表必須有主鍵或者是唯一索引!

否則的話,replace into 會直接插入數(shù)據(jù),這將導致表中出現(xiàn)重復的數(shù)據(jù)。

第二種:DUAL臨時表

insert into table(id, name)
select null, '張三' from DUAL
where not exists (select id from table where name = '張三') ;

其中的 DUAL 是一個臨時表,不需要物理創(chuàng)建,直接用即可。

這種就不需要上述那種必須主鍵相同或者有唯一索引的字段。

第三種:根據(jù)主鍵判斷

insert into table(id, name) on duplicate key update name = '李四';

根據(jù)主鍵id進行判重。

效果區(qū)別

第一種:不存在即插入,存在即修改

第二種:不存在即插入,存在則不做處理

第三種:不存在不做處理,存在即執(zhí)行update

已有數(shù)據(jù)存在則不插入,否則則修改

經(jīng)常遇到這樣的情景,向一個表里插入一條數(shù)據(jù),如果已經(jīng)存在就更新一下,用程序?qū)崿F(xiàn)麻煩而且在并發(fā)的時候可能會有問題,這時用mysql的DUPLICATE KEY 很方便

用法

INSERT INTO agent_user (group_id,group_type,user_name, user_mobile,created_time,updated_time)
SELECT 9503,8,a.user_name,a.user_mobile,1642397508000,1642397508000
from agent_user_heimingdan a on DUPLICATE KEY UPDATE user_mobile = a.user_mobile;

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • 詳解 MySQL 執(zhí)行計劃

    詳解 MySQL 執(zhí)行計劃

    這篇文章主要介紹了MySQL 執(zhí)行計劃的相關(guān)資料,幫助大家更好的理解和使用MySQL,感興趣的朋友可以了解下
    2020-12-12
  • MySQL kill不掉線程的原因

    MySQL kill不掉線程的原因

    這篇文章主要介紹了MySQL kill不掉線程的原因,幫助大家更好的理解和學習使用MySQL數(shù)據(jù)庫,感興趣的朋友可以了解下
    2021-05-05
  • MySQL慢查詢?nèi)罩?Slow Query Log)的實現(xiàn)

    MySQL慢查詢?nèi)罩?Slow Query Log)的實現(xiàn)

    慢查詢?nèi)罩居脕碛涗浽?nbsp;MySQL 中執(zhí)行時間超過指定時間的查詢語句,本文就來介紹一下MySQL慢查詢?nèi)罩?nbsp;的使用,感興趣的可以了解一下
    2024-08-08
  • MySQL <>和<=> 運算符介紹

    MySQL <>和<=> 運算符介紹

    這篇文章主要介紹了MySQL <>和<=> 運算符介紹,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-12-12
  • MySQL數(shù)據(jù),查詢QPS,TPS數(shù)據(jù)方式

    MySQL數(shù)據(jù),查詢QPS,TPS數(shù)據(jù)方式

    文章詳細介紹了查詢MySQL數(shù)據(jù)庫QPS和TPS的方法和工具,包括直接通過命令行、PerformanceSchema、mysqladmin、Prometheus、自動化腳本等,同時,還提供了優(yōu)化建議,如索引優(yōu)化、SQL調(diào)優(yōu)、事務控制和配置調(diào)優(yōu)
    2025-02-02
  • mysql的查詢緩存說明

    mysql的查詢緩存說明

    mysql的Query Cache有其特殊的業(yè)務場景,也不像其他數(shù)據(jù)庫產(chǎn)品,緩存查詢語句的執(zhí)行計劃等信息,而是直接緩存查詢語句的記錄集和對應的SQL語句
    2013-02-02
  • MySQL索引總結(jié)(Index?Type)

    MySQL索引總結(jié)(Index?Type)

    本文主要介紹了MySQL索引總結(jié)(Index?Type),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-02-02
  • 數(shù)據(jù)庫中的SELECT語句邏輯執(zhí)行順序分析

    數(shù)據(jù)庫中的SELECT語句邏輯執(zhí)行順序分析

    這篇文章主要介紹了數(shù)據(jù)庫中的SELECT語句邏輯執(zhí)行順序分析,并列出了一些例子,需要的朋友可以參考下
    2014-07-07
  • MySQL中EXPLAIN命令詳解

    MySQL中EXPLAIN命令詳解

    在這里我們將介紹的是MySQL中EXPLAIN解釋命令,希望對大家有所幫助
    2014-08-08
  • MySQL校對規(guī)則沖突解決方案

    MySQL校對規(guī)則沖突解決方案

    MySQL錯誤1267表明在比較兩個字段時,它們的校對規(guī)則不一致,本文主要介紹了MySQL校對規(guī)則沖突解決方案,具有一定的參考價值,感興趣的可以了解一下
    2025-04-04

最新評論

许昌县| 江西省| 岳普湖县| 米易县| 邯郸县| 汉沽区| 平泉县| 德州市| 台湾省| 尉犁县| 佛坪县| 黄浦区| 三江| 胶州市| 塔河县| 通江县| 博客| 登封市| 江都市| 沐川县| 嘉义县| 沂南县| 青州市| 建宁县| 浦县| 巨野县| 平江县| 崇文区| 泽州县| 沧源| 慈溪市| 尼勒克县| 衡南县| 鄂托克旗| 班玛县| 安仁县| 中阳县| 迭部县| 同心县| 泗水县| 榆树市|