首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >在MySQL中如何用SELECT语句替换不同位置的多个关键字?

在MySQL中如何用SELECT语句替换不同位置的多个关键字?
EN

Stack Overflow用户
提问于 2018-07-26 04:38:23
回答 1查看 0关注 0票数 0

有以下表格:

代码语言:txt
复制
select replace(Text,' ',' ');

我想用conat(‘)替换匹配的关键字_“,关键字,”__‘),请问该怎样实现呢?

EN

回答 1

Stack Overflow用户

发布于 2018-07-26 14:19:40

可以这样做:

代码语言:txt
复制
CREATE FUNCTION `SPLIT_STR`(
  x text,
  delim VARCHAR(12),
  pos INT
) RETURNS varchar(255) CHARSET utf8
RETURN REPLACE(SUBSTRING(SUBSTRING_INDEX(x, delim, pos),
       LENGTH(SUBSTRING_INDEX(x, delim, pos -1)) + 1),
       delim, '')


CREATE  FUNCTION `GDPR_find_keyword_and_color_them`(qtntext text,keyword nvarchar(50000)) RETURNS text CHARSET utf8
BEGIN

declare ttlkeyword bigint;
declare loopvar bigint;
declare keyword_ nvarchar(1000);
set ttlkeyword=(select count(*) from nsmx_beta4.privacy_policy_keywords);

set loopvar=1;
                while(loopvar<ttlkeyword) do
                                set keyword_=(select SPLIT_STR(keyword,',',loopvar));
                                if(keyword_!='')  then
                                                set qtntext=replace(qtntext,keyword_,concat('<b>',keyword_,'</b>'));
                                end if;
                                set loopvar=loopvar+1;
                end while;    
return qtntext;
END

select GDPR_find_keyword_and_color_them('hello my name is','my,is');
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/-100005786

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档