婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > MySQL實現replace函數的幾種實用場景

MySQL實現replace函數的幾種實用場景

熱門標簽:南昌三維地圖標注 武漢網絡外呼系統服務商 外呼系統打電話上限是多少 曲靖移動外呼系統公司 電話外呼系統改號 怎樣在地圖標注銷售區域 百應電話機器人優勢 地圖標注費用是多少 啥是企業400電話辦理

REPLACE語法

REPLACE(String,from_str,to_str)

即:將String中所有出現的from_str替換為to_str,這里的from_str不支持正則匹配。

操作實例

測試表數據如下:

mysql> select * from `LOL`;
+----+----------------+--------------+-------+
| id | hero_title   | hero_name  | price |
+----+----------------+--------------+-------+
| 1 | 刀鋒之影    | 泰隆     | 6300 |
| 2 | 迅捷斥候    | 提莫     | 6300 |
| 3 | 光輝女郎AA   | 拉克絲    | 1350 |
| 4 | 發條A魔靈A   | 奧莉安娜   | 6300 |
| 5 | 至高之拳    | 李青     | 6300 |
| 6 | 無極劍圣    | 易      |  450 |
| 7 | 疾風劍豪    | 亞索     | 6300 |
+----+----------------+--------------+-------+
7 rows in set (0.00 sec)

使用場景1 – (Query語句):

需求:把"hero_title"字段中所有的"之"換成" - "來展示,SQL如下:

SELECT REPLACE(hero_title,'之',' - ')as repl_title,hero_name,price from LOL;
mysql> SELECT REPLACE(hero_title,'之',' - ') as repl_title,hero_name,price from `LOL`;
+----------------+--------------+-------+
| repl_title   | hero_name  | price |
+----------------+--------------+-------+
| 刀鋒 - 影   | 泰隆     | 6300 |
| 迅捷斥候    | 提莫     | 6300 |
| 光輝女郎AA   | 拉克絲    | 1350 |
| 發條A魔靈A   | 奧莉安娜   | 6300 |
| 至高 - 拳   | 李青     | 6300 |
| 無極劍圣    | 易      |  450 |
| 疾風劍豪    | 亞索     | 6300 |
+----------------+--------------+-------+
7 rows in set (0.00 sec)

使用場景2 – (update語句):

需求:把"hero_title"字段中所有的"A"去掉,SQL如下:

UPDATE LOL SET hero_title=REPLACE(hero_title,‘A','');

mysql> UPDATE `LOL` SET hero_title=REPLACE(hero_title,'A','');
Query OK, 2 rows affected (0.05 sec)
Rows matched: 7 Changed: 2 Warnings: 0
-- 去掉后在查詢:
+----+--------------+--------------+-------+
| id | hero_title  | hero_name  | price |
+----+--------------+--------------+-------+
| 1 | 刀鋒之影   | 泰隆     | 6300 |
| 2 | 迅捷斥候   | 提莫     | 6300 |
| 3 | 光輝女郎   | 拉克絲    | 1350 |
| 4 | 發條魔靈   | 奧莉安娜   | 6300 |
| 5 | 至高之拳   | 李青     | 6300 |
| 6 | 無極劍圣   | 易      |  450 |
| 7 | 疾風劍豪   | 亞索     | 6300 |
+----+--------------+--------------+-------+
7 rows in set (0.00 sec)

使用場景3 – (插入或替換:REPLACE INTO)

如果我們想插入一條新記錄(INSERT),但如果記錄已經存在,就先刪除原記錄,再插入新記錄。

需求場景:

這張表存的每個客戶最近一次交易訂單信息,要求保證單個用戶數據不重復錄入,且執行效率最高,與數據庫交互最少,支撐數據庫的高可用。
此時,可以使用"REPLACE INTO"語句,這樣就不必先查詢,再決定是否先刪除再插入。

  • "REPLACE INTO"語句是基于唯一索引或主鍵來判斷唯一(是否存在)的。
  • "REPLACE INTO"語句是基于唯一索引或主鍵來判斷唯一(是否存在)的。
  • "REPLACE INTO"語句是基于唯一索引或主鍵來判斷唯一(是否存在)的。

注意事項:如下SQL所示,需要在username字段上建立唯一索引(Unique),transId設置自增即可。

-- 20點充值
REPLACE INTO last_transaction (transId,username,amount,trans_time,remark) 
  VALUES (null, 'chenhaha', 30, '2020-06-11 20:00:20', '會員充值');
 
-- 21點買皮膚
REPLACE INTO last_transaction (transId,username,amount,trans_time,remark) 
  VALUES (null, 'chenhaha', 100, '2020-06-11 21:00:00', '購買盲僧至高之拳皮膚');

 若username='chenhaha'的記錄不存在,REPLACE語句將插入新記錄(首次充值),否則,當前username='chenhaha'的記錄將被刪除,然后再插入新記錄。

id不要給具體值,不然會影響SQL執行,業務有特殊需求除外。

到此這篇關于MySQL實現replace函數的幾種實用場景的文章就介紹到這了,更多相關MySQL replace實用場景內容請搜索腳本之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • mysql 替換字段部分內容及mysql 替換函數replace()
  • MySQL使用Replace操作時造成數據丟失的問題解決
  • Mysql中replace與replace into的用法講解
  • mysql 的replace into實例詳解
  • MySQL中使用replace、regexp進行正則表達式替換的用法分析
  • mysql中使用replace替換某字段的部分內容
  • MySQL中replace into語句的用法詳解
  • 淺析MySQL replace into 的用法
  • MYSQL 批量替換之replace語法的使用詳解

標簽:甘南 資陽 黑河 荊州 吉林 隨州 錦州 滄州

巨人網絡通訊聲明:本文標題《MySQL實現replace函數的幾種實用場景》,本文關鍵詞  MySQL,實現,replace,函數,的,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《MySQL實現replace函數的幾種實用場景》相關的同類信息!
  • 本頁收集關于MySQL實現replace函數的幾種實用場景的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 琼中| 绥阳县| 景德镇市| 磐安县| 冷水江市| 德保县| 丰县| 邮箱| 沙洋县| 布尔津县| 自治县| 贺州市| 泽州县| 牙克石市| 井陉县| 金溪县| 定兴县| 多伦县| 乌兰浩特市| 南郑县| 曲周县| 聂荣县| 金沙县| 安龙县| 烟台市| 洮南市| 桂平市| 通辽市| 南召县| 和林格尔县| 潞城市| 安宁市| 汝城县| 潞西市| 开平市| 道孚县| 静安区| 蒙自县| 罗平县| 孟州市| 资中县|