我有一个继承的mysql数据库,包含很多垃圾数据,如:
<span class="editContent" data-key="services_pan6" >EDIT</span>'> My real text </span>
我应该删除特殊标记以保留“我的真实文本”。
但我找不到任何解决方案。有人可以帮帮我吗?
答案 0 :(得分:0)
嗯,这是一个(非常,太多)脏的解决方案,可以帮助您从数据库中导出所需的真实文本:
SELECT TRIM(&#34;&#39;&gt;&#34; FROM TRIM(&#34;&#34; FROM SUBSTRING(field_name,LOCATE(&#34;&#34;,field_name)), LOCATE(&#34;&#34;,field_name,2))))FROM table_name;
只需替换&#34; table_name&#34;和&#34; field_name&#34;。
答案 1 :(得分:0)
你可以定义一个函数:
CREATE FUNCTION strSplit(x varchar(255), delim varchar(12), pos int) returns varchar(255)
return replace(substring(substring_index(x, delim, pos), length(substring_index(x, delim, pos - 1)) + 1), delim, '');
然后用它来分割字符串,直到找到所需的文字。
例如:
select strSplit("a#b", '#',1) as first; -> aaa
select strSplit("aaa,b,cc,d", ',', 2) as second; -> b