SQL LIKE 通配符

SQL LIKE 通配符
[ 2007-4-29 17:54:00 | By: yangbo ]
 

通配符 说明
_    与任意单字符匹配
 
%    与包含一个或多个字符的字符串匹配
 
[ ]  与特定范围(例如,[a-f])或特定集(例如,[abcdef])中的任意单字符匹配。
 
[^]  与特定范围(例如,[^a-f])或特定集(例如,[^abcdef])之外的任意单字符匹配。
 

例子:

? WHERE FirstName LIKE '_im' 可以找到所有三个字母的、以 im 结尾的名字(例如,Jim、Tim)。
 
? WHERE LastName LIKE '%stein' 可以找到姓以 stein 结尾的所有员工。
 
? WHERE LastName LIKE '%stein%' 可以找到姓中任意位置包括 stein 的所有员工。
 
? WHERE FirstName LIKE '[JT]im' 可以找到三个字母的、以 im 结尾并以 J 或 T 开始的名字(即仅有 Jim 和 Tim)
 
? WHERE LastName LIKE 'm[^c]%' 可以找到以 m 开始的、后面的(第二个)字母不为 c 的所有姓。
 
一、搜索通配符字符的说明

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

  • 使用 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、

2、(说明"/"与"/"均可与escape关键字结合作为转义符)

4、

select strloginname,* from dbo.PersonalMember where strloginname  like
'%[[]%'
select strloginname,* from PersonalMember where strloginname like '%/[%' escape '/'


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

select strloginname,* from PersonalMember where strloginname like '%[%' esca
 
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值