从字符串中删除单词的SQL查询
我想要一个输出“HELLO亲爱的朋友”作为输入“HELLO亲爱的[好]朋友”。我们可以使用任何特殊字符来标识要删除的单词。假设您的单词以[开头]和[结尾],您可以执行以下操作: sql>从服务器中选择str 你好,亲爱的[好]朋友 sql>从服务器中选择CONCAT(左(str,LOCATE('[',str)-1),右(str,CHAR_长度(str)-LOCATE(']',str)) 你好,亲爱的朋友从字符串中删除单词的SQL查询,sql,oracle,Sql,Oracle,我想要一个输出“HELLO亲爱的朋友”作为输入“HELLO亲爱的[好]朋友”。我们可以使用任何特殊字符来标识要删除的单词。假设您的单词以[开头]和[结尾],您可以执行以下操作: sql>从服务器中选择str 你好,亲爱的[好]朋友 sql>从服务器中选择CONCAT(左(str,LOCATE('[',str)-1),右(str,CHAR_长度(str)-LOCATE(']',str)) 你好,亲爱的朋友 您可以使用正则表达式,例如: select regexp_replace('HELLO DE
您可以使用正则表达式,例如:
select regexp_replace('HELLO DEAR [GOOD] FRIEND'
, '\[.*\]', '') from dual;
HELLO DEAR FRIEND
如果要删除的字符串不是“好”字符串,会发生什么情况?您如何确定要删除的内容?方括号?如果是输入,为什么还要费心删除字符串?只是不要输入…@Ben,这是一个有效的要求。e、 g.我有一个包含消息的表,比如
您的密码是[xyzy]。
,一旦我发送了消息,我想删除敏感数据,但保留其余的用于调试,例如您的密码是[*******。
。我用正则表达式解决了它,IIRC。