一般like查询语句:
like '%test%'
但是如果某个字段存在'\':
这样的写法
like '%\%'
以及
like '%\\%'
都是不正确的。
正确的写法:
like '%\\\%'
原因:
反斜线符号会被语法分析程序剥离一次,在进行模式匹配时,又会被剥离一次,最后会剩下一个反斜线符号接受匹配
分享到:
2011-09-07 00:44
浏览 6167
分类:数据库
评论
1 楼
wanlic2008
2012-06-28
呵呵,4个斜杠才是正确的。
mysql> select * from testZh t where t.mrId like '贵州普定\电厂';
Empty set
mysql> select * from testZh t where t.mrId like '贵州普定\\电厂';
Empty set
mysql> select * from testZh t where t.mrId like '贵州普定\\\
电厂';
Empty set
mysql> select * from testZh t where t.mrId like '贵州普定\\\\
电厂';
+----+---------------+-----------------------------------+------+---------------------+
| id | mrId | mrName | text | isrTime |
+----+---------------+-----------------------------------+------+---------------------+
| 1 | 贵州普定\电厂 | 贵州普定电厂PDD\110.00千伏\CB_120 | sd | 2012-06-04 10:18:47 |
+----+---------------+-----------------------------------+------+---------------------+
1 row in set