在使用 LIKE 关键字时是不是可以在 MySQL 查询中使用 _ 作为普通字符 [重复]
Posted
技术标签:
【中文标题】在使用 LIKE 关键字时是不是可以在 MySQL 查询中使用 _ 作为普通字符 [重复]【英文标题】:Is it possible to use _ as an normal character in MySQL query while using LIKE keyword [duplicate]在使用 LIKE 关键字时是否可以在 MySQL 查询中使用 _ 作为普通字符 [重复] 【发布时间】:2021-10-04 17:00:38 【问题描述】:我有一个 mysql 查询,它使用 LIKE 将字符串与我的表列之一进行匹配,并且在大多数情况下都可以正常工作。
select * from TableName where Column like "%STRING%"
但是不,我有一组记录,其中包含“_0”。在这种情况下,我会收到类似这样的 get 查询。
select * from TableName where Column like "%_0%"
在这种情况下,MySQL 将 _ 作为通配符并跳过字符串中的第一个索引
现在我的问题是,是否有可能让这个搜索按原样工作,以任何方式告诉 MySQL 它不是 (_) 通配符,所以搜索字符串。 非常感谢您的帮助。
提前致谢。
Query Result Image
【问题讨论】:
MySQL SQL Server - 请更正您的标签。 好像是***.com/q/22167132/366965的副本 【参考方案1】:您可以使用反斜杠对其进行转义:
where Column like '%\_0%'
或者使用你自己的转义字符:
where Column like '%$_0%' escape '$';
【讨论】:
嗨,戈登,感谢您的回复,我尝试了您提到的两种方法,但对我没有用。尽管表中的记录为 _0,但它的记录为零以上是关于在使用 LIKE 关键字时是不是可以在 MySQL 查询中使用 _ 作为普通字符 [重复]的主要内容,如果未能解决你的问题,请参考以下文章