mysql模糊查询固定某个字符

mysql模糊查询固定某个字符,第1张

使用mysql模糊查询时,如果输入特殊字符,比如%,_会导致查询条件匹配所有记录,因为mysql的模糊查询要使用like关键字,而%和_分别时通配符,%表示任意个任意字符,_表示任意一个字符,如果要查询的字符包含%或_,会导致查询条件无效。

这个问题,首先要将%和_符号进行转义,这样就与mysql的%和_通配符不冲突,

特殊字符前加 / ,特殊字符分别转义成

您好,update mt2 set name = replace(name, substring(name, locate('<contact>', name),locate('</contact>', name)-locate('<contact>'+10, name)),'')

locate:

LOCATE(substr,str)

POSITION(substr IN str)

返回子串 substr 在字符串 str 中第一次出现的位置。如果子串 substr 在 str 中不存在,返回值为 0:

substring

SUBSTR(str,pos,len): 由<str>中的第<pos>位置开始,选出接下去的<len>个字元。

replace

replace(str1, str2, str3): 在字串 str1 中,当 str2 出现时,将其以 str3 替代。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/7597790.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-07
下一篇 2023-04-07

发表评论

登录后才能评论

评论列表(0条)

保存