在我的一个字段的Mysql中,我有例如这个字符串 -
一些文字[= ajunkt]
我想复制方括号内的部分字符串,正好
ajunkt
到另一个字段并删除[= ajunkt]
答案 0 :(得分:1)
如果模式相同,您可以使用substring_index
将字符串的那一部分作为
mysql> select substring_index(substring_index('some text [= ajunkt]','[=',-1),']',1) as copy;
+---------+
| copy |
+---------+
| ajunkt |
+---------+
1 row in set (0.00 sec)
现在将文本复制到另一个文件中,您可以将其用作
update table_name
set
copy_col_name = substring_index(substring_index(col_name','[=',-1),']',1);
最后,您可以将现有字符串中的该部分替换为
select
replace(
'some text [= ajunkt]',
concat(
'[= ',
trim(
substring_index(
substring_index('some text [= ajunkt]',
'[=',-1),
']',1
)
),
']'
),
'') as new_str ;
+------------+
| new_str |
+------------+
| some text |
+------------+
将上面的选择更改为更新,并将硬编码的输入值替换为列名。