在我的数据库中,我有my_table
,列为introtext
。
一些记录包括一个跨度,我想删除:
<p><span style="line-height: 1.7142857148;">Text text text...</span></p>
而得到类似的东西:
<p>Text text text....</p>
我需要一个SQL查询来自动执行此操作。我正在尝试:
UPDATE my_table
SET introtext= REPLACE('introtext', '<span style="line-height: 1.7142857148;">','')
UPDATE my_table
SET introtext= REPLACE('introtext', '</span>','')
这将返回错误:
#1064 - You have an error in your SQL syntax;
我该如何构建一个查询,以从基础文本中删除跨度,而不管它具有哪种样式或类,而不会出现此错误?
最佳答案
你只是想念一个;在您的第一个查询之后,您不必引用前文字:
UPDATE my_table
SET introtext= REPLACE(introtext, '<span style="line-height: 1.7142857148;">','');
UPDATE my_table
SET introtext= REPLACE(introtext, '</span>','');
请参见here。