久久精品五月,日韩不卡视频在线观看,国产精品videossex久久发布 ,久久av综合

站長(zhǎng)資訊網(wǎng)
最全最豐富的資訊網(wǎng)站

一起分析MySQL中replace?into與replace區(qū)別

本篇文章給大家?guī)砹岁P(guān)于mysql的相關(guān)知識(shí),其中主要介紹了MySQL中replace into與replace區(qū)別詳解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,希望對(duì)大家有幫助。

一起分析MySQL中replace?into與replace區(qū)別

推薦學(xué)習(xí):mysql視頻教程

本篇為拋磚引玉篇,之前沒關(guān)注過replace into 與replace 的區(qū)別。經(jīng)過多個(gè)場(chǎng)景測(cè)試,居然沒找到在插入數(shù)據(jù)的時(shí)候兩者有什么本質(zhì)的區(qū)別?如果了解詳情的伙伴們,請(qǐng)告知留言告知一二,不勝感激!!!

0.故事的背景

【表格結(jié)構(gòu)】

CREATE TABLE `xtp_algo_white_list` (   `strategy_type` int DEFAULT NULL,   `user_name` varchar(64) COLLATE utf8_bin DEFAULT NULL,   `status` int DEFAULT NULL,   `destroy_at` datetime DEFAULT NULL,   `created_at` datetime DEFAULT CURRENT_TIMESTAMP,   `updated_at` datetime DEFAULT CURRENT_TIMESTAMP,   UNIQUE KEY `xtp_algo_white_list_UN` (`strategy_type`,`user_name`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin   # `strategy_type`,`user_name` 這兩個(gè)是聯(lián)合唯一索引,多關(guān)注后續(xù)需要用到!!!

一起分析MySQL中replace?into與replace區(qū)別

【需求:】

  • 根據(jù)表格里面, 209133002266賬戶的數(shù)據(jù),重新插入一個(gè)用戶20220302001, 使得新生成的數(shù)據(jù)中strategy_type & status & destroy_at 字段與209133002266用戶的一致。
  • 使用update 一條一條更新也行,但是比較慢。
  • 使用replace into 效果會(huì)高很多,但是深入研究發(fā)現(xiàn)也有一些坑的地方

1.replace into 的使用方法

replace into xtp_algo_white_list (`strategy_type`, `user_name`, `status`, `destroy_at`) select strategy_type ,20220302001, status, destroy_at from xtp_algo_white_list xawl where xawl.user_name = 209133002266;  # replace into 后面跟表格+需要插入的所有字段名(自動(dòng)遞增字段不用寫) # select 后面選擇的字段,如果根據(jù)查詢結(jié)果取值,則寫字段名;如果是寫死的,則直接寫具體值即可 # 可以理解為,第一部分是插入表格的結(jié)構(gòu),第二部分是你查詢的數(shù)據(jù)結(jié)果

2.有唯一索引時(shí)—replace into & 與replace 效果

step1: 第一次執(zhí)行sql情況

replace into xtp_algo_white_list (`strategy_type`, `user_name`, `status`, `destroy_at`) select strategy_type ,20220302001, status, destroy_at from xtp_algo_white_list xawl where xawl.user_name = 209133002266;

一起分析MySQL中replace?into與replace區(qū)別

【執(zhí)行完之后,查詢結(jié)果如下:】

一起分析MySQL中replace?into與replace區(qū)別

step2: 第二次執(zhí)行sql情況

一起分析MySQL中replace?into與replace區(qū)別

一起分析MySQL中replace?into與replace區(qū)別

為什么第二次執(zhí)行的時(shí)候,顯示update 12行的數(shù)據(jù)且created at 數(shù)據(jù)更新了,而第一次會(huì)顯示update 6行???

1.因?yàn)樵趫?zhí)行sql的時(shí)候,replace into 其實(shí)分了兩個(gè)步驟執(zhí)行。第一步是將查詢到數(shù)據(jù)轉(zhuǎn)化為新的數(shù)據(jù)。第二步, 新的數(shù)據(jù)如果表中已經(jīng)有相同的內(nèi)容,則刪除掉。如果沒有相同的內(nèi)容,則直接插入新的數(shù)據(jù)。

2.因如上第一次執(zhí)行的時(shí)候,已經(jīng)生成一次新數(shù)據(jù)了,第二次會(huì)先刪除,再把最新的數(shù)據(jù)插入進(jìn)去,最終才顯示update 12 行

step3: 第三次執(zhí)行sql情況

# 此時(shí)執(zhí)行的是replace   replace xtp_algo_white_list (`strategy_type`, `user_name`, `status`, `destroy_at`) select strategy_type ,20220302001, status, destroy_at from xtp_algo_white_list xawl where xawl.user_name = 209133002266;

一起分析MySQL中replace?into與replace區(qū)別

一起分析MySQL中replace?into與replace區(qū)別

  • 最終查看到的情況與第二次執(zhí)行的sql一樣。
  • 當(dāng)新數(shù)據(jù)已經(jīng)存在的時(shí)候,replace into 與replace是一樣的
  • 后續(xù)刪除所有20220302001,執(zhí)行1次,2次sql,發(fā)現(xiàn)replace into 與 replace 效果都是一樣的

【總結(jié):】當(dāng)有唯一索引限制的時(shí)候,如果新增的數(shù)據(jù)會(huì)受限于唯一索引,則數(shù)據(jù)只會(huì)插入一次,如果已經(jīng)存在則會(huì)先刪除再插入。此時(shí)replace into 與replace 效果一樣。

3.沒有唯一索引時(shí)—replace into 與 replace

我們將strategy_type & user_name 聯(lián)合唯一索引刪除,且刪除20220302001用戶所有數(shù)據(jù)。最終表格結(jié)構(gòu)如下:

CREATE TABLE `xtp_algo_white_list` (   `strategy_type` int DEFAULT NULL,   `user_name` varchar(64) COLLATE utf8_bin DEFAULT NULL,   `status` int DEFAULT NULL,   `destroy_at` datetime DEFAULT NULL,   `created_at` datetime DEFAULT CURRENT_TIMESTAMP,   `updated_at` datetime DEFAULT CURRENT_TIMESTAMP ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin

1).replace函數(shù)的具體情況

step1:執(zhí)行如下replace 對(duì)應(yīng)sql:

replace xtp_algo_white_list (`strategy_type`, `user_name`, `status`, `destroy_at`) select strategy_type ,20220302001, status, destroy_at from xtp_algo_white_list xawl where xawl.user_name = 209133002266;

一起分析MySQL中replace?into與replace區(qū)別

一起分析MySQL中replace?into與replace區(qū)別

step2:再次執(zhí)行replace 對(duì)應(yīng)sql:

一起分析MySQL中replace?into與replace區(qū)別

一起分析MySQL中replace?into與replace區(qū)別

  • 第二次執(zhí)行replace 對(duì)應(yīng)sql ,因?yàn)闆]有唯一索引限制,結(jié)果原始數(shù)據(jù)居然沒變動(dòng)。又重新生成了新的6條數(shù)據(jù)。
  • 如果后續(xù)還執(zhí)行如上的sql,則數(shù)據(jù)還會(huì)繼續(xù)增加

2).replace into 函數(shù)的具體情況

執(zhí)行之前,先清理數(shù)據(jù),將所有20220302001的數(shù)據(jù)都刪除掉

step1:執(zhí)行如下replace into 對(duì)應(yīng)sql:

replace into xtp_algo_white_list (`strategy_type`, `user_name`, `status`, `destroy_at`) select strategy_type ,20220302001, status, destroy_at from xtp_algo_white_list xawl where xawl.user_name = 209133002266;

一起分析MySQL中replace?into與replace區(qū)別

一起分析MySQL中replace?into與replace區(qū)別

step2:再次執(zhí)行replace into 對(duì)應(yīng)sql:

一起分析MySQL中replace?into與replace區(qū)別

一起分析MySQL中replace?into與replace區(qū)別

最終發(fā)現(xiàn),沒有唯一索引的時(shí)候,replace into 與replace 居然一摸一樣的效果,都是繼續(xù)增加數(shù)據(jù)。

通過以上分析,沒看出replace into 與replace 具體有啥區(qū)別????有誰知道呢?

4.replace的用法

  • 單獨(dú)replace的作用是替換字段中某數(shù)值的顯示效果。可以數(shù)值中的部分替換、也可以全部替換。
  • 如下表格,將user_name的字段,20220302改為"A_20220303"顯示,并且新字段叫做new_name顯示

一起分析MySQL中replace?into與replace區(qū)別

select *, replace(user_name,20220302,'A_20220303') as "new_name" from xtp_algo_white_list where user_name = 20220302001;

一起分析MySQL中replace?into與replace區(qū)別

推薦學(xué)習(xí):mysql視頻教程

贊(0)
分享到: 更多 (0)
?
網(wǎng)站地圖   滬ICP備18035694號(hào)-2    滬公網(wǎng)安備31011702889846號(hào)
久久精品五月,日韩不卡视频在线观看,国产精品videossex久久发布 ,久久av综合
女人天堂亚洲aⅴ在线观看| 一区二区视频欧美| 7777精品| 日韩不卡一区二区三区| 日本在线视频一区二区| 亚洲精品日韩久久| 日韩中出av| 国产欧美久久一区二区三区| 免费一区二区视频| 亚洲精品系列| 久久激情av| 久久不见久久见中文字幕免费| 麻豆精品在线| 国产一区丝袜| 欧洲av不卡| 欧美亚洲激情| 蜜桃av一区二区三区电影| 亚洲91网站| 欧美激情视频一区二区三区在线播放| 精品国产鲁一鲁****| 日韩一区二区三区免费播放| 精品欧美激情在线观看| 国产亚洲午夜| 日本不卡的三区四区五区| 国产精品资源| 日韩毛片视频| 日韩在线一区二区| 国产精品a级| 欧美一区三区| 亚洲久久视频| 久久精品免费看| 欧美成人基地| 麻豆成人在线| 你懂的国产精品永久在线| av免费不卡国产观看| 狠狠爱www人成狠狠爱综合网| 日本在线不卡视频一二三区| 九九99久久精品在免费线bt| 久久国产日韩| 日韩精品五月天| 国产伦久视频在线观看| 午夜久久影院| 国产精品羞羞答答在线观看| 欧美成人a交片免费看| 久久99伊人| 国产黄色精品| 亚洲欧美日本日韩| 久久亚洲人体| 久久国产高清| 国产成人精品一区二区三区免费 | 亚洲人成精品久久久| 你懂的网址国产 欧美| 日韩欧美一区二区三区在线视频| 亚洲尤物av| 欧产日产国产精品视频| 日本欧美一区| 欧美午夜精品一区二区三区电影| 日韩欧美激情| 性欧美xxxx免费岛国不卡电影| 欧美久久精品| 欧美在线资源| 国内揄拍国内精品久久| 一区二区国产在线观看| 国模大尺度视频一区二区| 视频在线在亚洲| 国产不卡av一区二区| 老牛影视一区二区三区| 麻豆久久一区二区| 日韩精品一级二级| 成人精品亚洲| 精品国产亚洲一区二区三区大结局| 噜噜噜久久亚洲精品国产品小说| 国产成人调教视频在线观看| 蜜桃av一区二区三区电影| 日韩中文在线播放| 国产精品调教| 中文一区一区三区免费在线观 | 日韩中文字幕不卡| 午夜av成人| 国产精品一在线观看| 在线精品亚洲| 久久一区二区三区电影| 精品三级久久久| 国产调教精品| 午夜精品影视国产一区在线麻豆| 久久国产主播| 成人一二三区| 老牛国内精品亚洲成av人片| 亚欧洲精品视频在线观看| 国产专区一区| 成人高清一区| 美女av一区| 国产一卡不卡| 日韩av网站在线免费观看| 日韩中文字幕一区二区三区| 欧美精选一区二区三区| 肉色欧美久久久久久久免费看| 国产精品香蕉| 日本欧美大码aⅴ在线播放| 爽好多水快深点欧美视频| 午夜久久福利| 国产高清一区二区| 欧美日韩一区二区综合| 午夜精品久久久久久久久久蜜桃| 精品美女在线视频| 国产精品一卡| 国产欧美日韩一级| 国产欧美日韩精品一区二区免费| 日韩一区二区三区精品| 日韩影院在线观看| 99国产成+人+综合+亚洲欧美| 成人日韩精品| 日本久久成人网| 91精品综合| 国产精品亚洲一区二区三区在线观看| 免费在线小视频| 国产一区二区三区四区五区传媒| 一本大道色婷婷在线| 成人精品高清在线视频| 精品国产欧美| 国产精品密蕾丝视频下载| 日本精品在线播放| 日韩精品一页| 国产美女精品视频免费播放软件| 欧美综合精品| 国产精品久久久亚洲一区| 久久wwww| 国产一区二区三区亚洲综合| 岛国av在线播放| 日韩在线免费| 欧美va亚洲va日韩∨a综合色| 美女网站一区| 午夜一级在线看亚洲| 亚洲我射av| 国产精区一区二区| 国产福利一区二区精品秒拍 | 国产精品视区| 亚洲精品成a人ⅴ香蕉片| 97久久亚洲| 精品久久视频| 欧美亚洲激情| 在线精品视频一区| 国产欧美自拍| 成人片免费看| 欧美va天堂| 久热精品在线| 国产精品欧美日韩一区| 精品国产aⅴ| 亚洲成av人片一区二区密柚 | 久久一区二区三区电影| 亚洲一区日本| 日韩精品久久理论片| 久久久国产精品入口麻豆| 91欧美在线| 国产精品色网| 国产精品一区二区精品视频观看| 国产一区一一区高清不卡| 欧美日韩在线二区| 久久亚洲影院| 国产剧情一区| 久久久国产精品一区二区中文| 国产一区二区精品| 国产亚洲欧美日韩精品一区二区三区| 久久精品国产99国产精品| 秋霞影视一区二区三区| 日韩专区一卡二卡| 久久一区精品| 亚洲激情精品| 国产精品嫩模av在线| 久久精品在线| 午夜视频一区二区在线观看| 国产成人精品一区二区三区免费| 日韩一级不卡| 美女视频黄 久久| 欧美日韩在线网站| 日本午夜精品一区二区三区电影| 欧美精品观看| 国产精品毛片一区二区三区| 日韩一区免费| zzzwww在线看片免费| 在线亚洲欧美| 国产高清视频一区二区| 欧美成人综合| 日本色综合中文字幕| 亚洲精品.com| 欧美天堂一区| 亚洲二区精品| 国产精品中文字幕亚洲欧美| 视频福利一区| 亚洲一区有码| 成人羞羞视频播放网站| 日韩激情综合| 成人日韩在线观看| 国产午夜久久av| 91成人精品| 丁香婷婷久久| 91福利精品在线观看| 五月天久久777| 久久精品亚洲| 亚洲毛片在线免费|