在mysql字符串fucntions中搜索特殊字符

时间:2018-05-12 07:31:51

标签: mysql string function character mariadb

我需要在mysql字符串函数中使用像(\)字符这样的特殊字符,遗憾的是它无法正常工作!例如,无法单独搜索此字符(locate-instr-substring_index-concat甚至在set变量值中)是我需要的功能和测试)

喜欢这些

SELECT LOCATE("\", "Schools.co\m", 1) AS MatchPosition;
select SUBSTRING_INDEX("footba\l","\",1)

如果有人能帮助我,我将不胜感激

1 个答案:

答案 0 :(得分:1)

反斜杠需要转义。要修复您的SUBSTRING_INDEX示例,请考虑以下事项:

SELECT SUBSTRING_INDEX("footba\\l","\\",1) FROM dual

在这里,必须在字符串文字和文本中对反斜杠进行转义 以匹配。

要转义LIKE表达式中的文字反斜杠,请使用四个反斜杠,例如

SELECT 'match' FROM dual WHERE "footba\\l" LIKE '%\\\\%';

Demo