【问题标题】:SQL Find & Replace part of a stringSQL查找和替换字符串的一部分
【发布时间】:2012-04-14 13:04:33
【问题描述】:

我正在尝试在字符串中查找某些文本“catid=18”,除此之外,每个字符串都不同。 我之前在下面使用过这个查询,但它似乎只有在你知道整个字符串的情况下才有效。

update TABLE_NAME
set FIELD_NAME = replace(FIELD_NAME, 'findthis', 'replacewiththis'); 

【问题讨论】:

  • 您要查找字符串并使用替换?能否请您提供更多信息。

标签: mysql sql


【解决方案1】:

不确定这是否是您想要的。但是如果找到catid=any_num,它将返回1,如果没有找到0

select 'some_text catid=18 some_text' REGEXP 'catid=[0-9]+'

【讨论】:

    【解决方案2】:

    也许你需要:

    update TABLE_NAME
    set FIELD_NAME = 'goodvalue'
    WHERE FIELD_NAME = 'badvalue'; 
    

    【讨论】:

    • 更具体地说,这是其中一个网址。我试图用 catid="7" 替换“catid=51”。每个网址都不一样:index.php?option=com_content&view=article&id=149:multiple-objectives-when-deciding-to-sell-a-medical-practice&catid=51:articles&Itemid=114跨度>
    • 它们都存在于同一个表和字段名称中,如果有帮助的话
    • 现在你在谈论 url。请向我们展示一些来自真实表格的真实数据,而不是您的元数据。
    猜你喜欢
    • 2020-05-27
    • 2021-11-15
    • 1970-01-01
    • 2017-01-17
    • 1970-01-01
    • 2018-12-18
    • 2019-09-28
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多