转义字符解决通配符匹配问题

大家都知道,通配符两个:'%'、'_'.有时候写SQL语句查询的时候,会使用 like '%aa%' 等等。但是偶尔也希望能匹配通配符..例如想查询一个人用户名里面带有_的用户。

那么可以使用下面语句来实现:

select * from user where username like '%\_%' escape '\';

 这样就可以了。

escape可以定义转移字符,上面的'\' 就成了转移字符了。其实据测试,escape后面的字符'\' 可以换成其他字符,但只能是一个字符。 例如:

 

select * from user where username like '%a_%' escape 'a';

 也是可以的。但是不推荐...编程习惯问题...

你可能感兴趣的:(sql,编程)