91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何批量替換字符串中的某個特定字符?

發布時間:2020-05-26 05:06:20 來源:網絡 閱讀:706 作者:小陳子057 欄目:關系型數據庫

前兩天領導突然給了我一個excel文件(該文件的編碼只是簡單的一個編碼,如‘C001’,而不是像A表中存在的是一個sql語句),里面有rule_code對應的代碼,領導要求我將表A中ori_sql列where條件的漢字限制替換為代碼,A表的主鍵是rule_code,

例如:
select from A a where a.codetype not in (select code from B b where b.codetypedesc='出險人保單身份類型代碼';
改為:
select
from A a where a.codetype not in (select code from B b where b.codetypedesc='C001';

有的人覺得直接用replace替換:
update A set ori_sql = (select replace(lower(a.ori_sql),'出險人保單身份類型代碼','C001') from A) ;

當時我也嘗試了,但是A表中有上千萬的數據,自然where條件不單單是'出險人保單身份類型代碼'這一個條件,我對where條件存在的代碼去重還有一千多條結果,這就意味著我要跑replace上述的sql一千多遍,我就會瘋掉的。后來我嘗試了將excel里的編碼插入到表A,列名為r_code,將A表中where條件單獨取出作為一列r_cow,這樣就可以僅用一句sql語句就能實現上千條的不同條件的批量替換字符串中的某個字符了,
sql如下:
update A a set a.ori_sql = (select distinct replace(lower(a1.ori_sql),a1.r_cow,a1.r_code) from A a1 where a.ru_code=a1.row_code);

成功完成,不用加班咯!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

东辽县| 安宁市| 涿鹿县| 莱芜市| 新余市| 伊金霍洛旗| 融水| 阳信县| 萝北县| 子长县| 谢通门县| 翁源县| 黄骅市| 盐源县| 会同县| 峨山| 余江县| 盐山县| 东辽县| 岳阳县| 壶关县| 积石山| 延庆县| 贵州省| 三门县| 朔州市| 汤原县| 扬中市| 遂川县| 贵溪市| 射阳县| 通化市| 体育| 襄樊市| 宝清县| 贵南县| 隆昌县| 苍南县| 夏邑县| 大安市| 韩城市|