SQL查询中的转义字符
2007-12-06 15:38
239 查看
如果想查找“_cs”结尾的的账户select * from [user] where loginname like '%_cs'是不行的,_ 被认为是任意的字符,所以需要转义字符,有两种写法:select * from [user] where loginname like '%[_]cs'select * from [user] where loginname like '%/_cs' escape'/'
例如:LIKE 'Mc%' 将搜索以字母 Mc 开头的所有字符串(如 McBadden)。LIKE '%inger' 将搜索以字母 inger 结尾的所有字符串(如 Ringer、Stringer)。LIKE '%en%' 将搜索在任何位置包含字母 en 的所有字符串(如 Bennet、Green、McBadden)。LIKE '_heryl' 将搜索以字母 heryl 结尾的所有六个字母的名称(如 Cheryl、Sheryl)。LIKE '[CK]ars[eo]n' 将搜索下列字符串:Carsen、Karsen、Carson 和 Karson(如 Carson)。LIKE '[M-Z]inger' 将搜索以字符串 inger 结尾、以从 M 到 Z 的任何单个字母开头的所有名称(如 Ringer)。LIKE 'M[^c]%' 将搜索以字母 M 开头,并且第二个字母不是 c 的所有名称(如 MacFeather)。使用 ESCAPE 关键字定义转义符。在模式中,当转义符置于通配符之前时,该通配符就解释为普通字符。例如,要搜索在任意位置包含字符串 5% 的字符串,请使用:
Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=1920606
通配符 | 含义 |
---|---|
% | 包含零个或更多字符的任意字符串。 |
_ | 任何单个字符。 |
[ ] | 指定范围(例如 [a-f])或集合(例如 [abcdef])内的任何单个字符。 |
[^] | 不在指定范围(例如 [^a - f])或集合(例如 [^abcdef])内的任何单个字符。 |
WHERE ColumnA LIKE '%5/%%' ESCAPE '/'
符号 | 含义 |
---|---|
LIKE '5[%]' | 5% |
LIKE '5%' | 5 后跟 0 个或更多字符的字符串 |
LIKE '[_]n' | _n |
LIKE '_n' | an, in, on (and so on) |
LIKE '[a-cdf]' | a, b, c, d, or f |
LIKE '[-acdf]' | -, a, c, d, or f |
LIKE '[ [ ]' | [ |
LIKE ']' | ] |
相关文章推荐
- SQL查询中的转义字符
- SQL查询中的转义字符
- ORACLE SQL查询中特殊字符的转义
- SQL查询中的通配符字符转义
- MyBatis拦截器动态修改SQL语句及参数值(场景:查询中字段值中特殊字符自动转义)
- SQL查询中的转义字符
- SQL查询中的转义字符
- PL/SQL中的转义字符汇总
- PL/SQL Developer无法通过字符匹配查询数据
- sql语句查询包含某些字符的所有存储过程
- SQL SERVER LIKE 中特殊字符转义
- SQLQuery 查询Oracle char类型返回一个字符有关问题
- 将SQL for xml path('')中转义的字符正常显示
- hql/sql语句查询英文字符时是不区分大小写的
- TP 查询时候标题带有&的字符,查询没有结果!打出SQL语句去数据库查,返回有结果!
- Hibernate通过SQL查询常量时只能返回第一个字符的解决方法
- SQL 查询字段某个字符是否存在解决方法即in(字符解决)
- sql特殊字符转义处理,防止注入
- Hibernate通过SQL查询常量时只能返回第一个字符的解决方法
- oracle sql模糊查询时允许查询特殊字符