簡體   English   中英

在MySQL中使用replace和concat

[英]Using replace and concat in MySQL

我在一列中有類似以下的字符串值:

|333|,|331|

我要執行平衡的字符串替換,如下所示:

xxTM_333_TMxx,xxTM_331_TMxx

我嘗試使用REPLACECONCAT函數來執行此操作,但未獲得所需的輸出。

例如:

SELECT REPLACE('|333|,|331|','|','xxTM');

這將替換| 符號在每種情況下均正確無誤,但不匹配(平衡)的對應符號。

如何在MySQL中獲得此結果?

SET @st := '|333|,|331|';

SELECT
  CASE WHEN @st LIKE '|%|' THEN
    CONCAT(
      'xxTM',
      REPLACE(REPLACE(@st, '|,|', '_TMxx,xxTM_'), '|', '_'),
      'TMxx')
  END rep_st;

請看這里的小提琴。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM