她尋求數的版本替換它
您必須將搜索值的2倍
SELECT CONCAT_WS (',',
SUBSTRING_INDEX(id_group, ',', FIND_IN_SET('888',id_group)-1)
,'100',
SUBSTRING_INDEX(id_group, ',', --1* (LENGTH(REGEXP_REPLACE(id_group,'[0-9]','')) -(FIND_IN_SET('888',id_group)-1)))
);
樣品
MariaDB [(none)]> SELECT CONCAT_WS (',',
-> SUBSTRING_INDEX('123,9901,888,99', ',', FIND_IN_SET('888','123,9901,888,99')-1)
-> ,'100',
-> SUBSTRING_INDEX('123,9901,888,99', ',', --1* (LENGTH(REGEXP_REPLACE('123,9901,888,99','[0-9]','')) -(FIND_IN_SET('888','123,9901,888,99')-1)))
-> );
+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| CONCAT_WS (',',
SUBSTRING_INDEX('123,9901,888,99', ',', FIND_IN_SET('888','123,9901,888,99')-1)
,'100',
SUBSTRING_INDEX('123,9901,888,99', ',', --1* (LENGTH(REGEXP_REPLACE('123,9901,888,99','[0-9]','')) -(FIND_IN_SET('888','123,9901,888,9 |
+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| 123,9901,100,123 |
+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)
MariaDB [(none)]>
決不存儲在多個值一個領域。改變你的表設計是這個問題的唯一真正的解決方案 –
謝謝你的提醒 但是,迫切需要使用這個sql我需要修改系統發生的問題 – Sky