>  기사  >  데이터 베이스  >  SQL中通配符、转义符与"["号的使用(downmoon)_MySQL

SQL中通配符、转义符与"["号的使用(downmoon)_MySQL

WBOY
WBOY원래의
2016-06-01 14:05:131162검색

一、搜索通配符字符的说明
可以搜索通配符字符。有两种方法可指定平常用作通配符的字符:

使用 ESCAPE 关键字定义转义符。在模式中,当转义符置于通配符之前时,该通配符就解释为普通字符。例如,要搜索在任意位置包含字符串 5% 的字符串,请使用:
WHERE ColumnA LIKE '%5/%%' ESCAPE '/'

在上述 LIKE 子句中,前导和结尾百分号 (%) 解释为通配符,而斜杠 (/) 之后的百分号解释为字符 %。

在方括号 ([ ]) 中只包含通配符本身。要搜索破折号 (-) 而不是用它指定搜索范围,请将破折号指定为方括号内的第一个字符:
WHERE ColumnA LIKE '9[-]5'

下表显示了括在方括号内的通配符的用法。

符号 含义
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 ']' ]

二、实例说明:

在表PersonalMember中查找strloginname字段中含有"["的记录。


可用三条语句:
1、
select strloginname,* from PersonalMember where strloginname like '%\[%' escape '\'

2、(说明"\"与"/"均可与escape关键字结合作为转义符)
select strloginname,* from PersonalMember where strloginname like '%/[%' escape '/'

3、
select strloginname,* from dbo.PersonalMember where charindex('[',strloginname)>0

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.