国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > MySQL > 正文

MySQL的String函數locate和replace實戰

2024-07-24 12:39:49
字體:
來源:轉載
供稿:網友

locate(substr,str,pos)函數是返回子串 substr 在字符串 str 中第一次出現的位置,如果子串 substr 在 str 中不存在,返回值為 0,REPLACE(str,from_str,to_str)替換字串,str為源字串,from_str為將要被替換的字串,to_str為目的字串.

有關mysql中的locate函數可以查看該鏈接:http://dev.mysql.com/doc/refman/5.0/en/string-functions.html#function_locate

有關mysql中的replace函數可以查看該鏈接:http://dev.mysql.com/doc/refman/5.0/en/string-functions.html#function_replace

以上便是今天我們要介紹使用的兩個函數.

使用背景:

條件:field_data_body 表的body_value值中有這樣一個規律的字符串"/eapdomain/UserFiles/1073/File/"、"/eapdomain/UserFiles/1073/File/",其中1073是用戶id。不要驚訝為什么會有這樣的路徑!

目的:body_value中所有的符合上述規律的字符串替換為 "/sites/default/files/old/image/","/sites/default/files/old/file/"。

難點:數據量略大4千條數據,不可能手動更改,每條數據中可能存在著不止一個這樣的路徑或者不存在,用戶id為變動的,不能確定.

直接操作數據庫吧,在Navicat中,打開你的數據庫命令行工具,不限于此工具,輸入以下的命令進行替換工作.

替換包含image的字符串:

  1. UPDATE field_data_body set body_value = replace(body_value, substring(body_value, locate('/eapdomain/UserFiles/', body_value),locate('/Image/', body_value)+7-locate('/eapdomain/UserFiles/', body_value)),'/sites/default/files/old/image/')  --Vevb.com 

替換包含file的字符串:

  1. UPDATE field_data_body set body_value = replace(body_value, substring(body_value, locate('/eapdomain/UserFiles/', body_value),locate('/File/', body_value)+6-locate('/eapdomain/UserFiles/', body_value)),'/sites/default/files/old/file/'

能夠實現該目的的方法會很多,歡迎大家在下邊留言.

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 石首市| 长寿区| 镇原县| 都安| 农安县| 仙桃市| 积石山| 洪泽县| 兴安盟| 历史| 临沂市| 九寨沟县| 西乌珠穆沁旗| 思南县| 屏山县| 梁平县| 射阳县| 浙江省| 疏勒县| 揭西县| 曲阜市| 梅州市| 招远市| 贺兰县| 日照市| 西安市| 河曲县| 杭锦后旗| 常熟市| 桐柏县| 青川县| 扬中市| 三都| 会宁县| 沧源| 仁寿县| 开江县| 加查县| 沙湾县| 商洛市| 泽州县|