sqlserver LIKE 操作符

LIKE 操作符

LIKE 操作符是把列值与某个特定模式进行比较,有时称为模糊查询。 LIKE 操作符的语法格式如下:

< 列名 > [ NOT] LIKE < 模式串 >

其中:

¨          < 列名 > 是表中的列名。

¨          < 模式串 > 是匹配特定的模式,其取值如下:

n          % (百分号):匹配零个或多个字符的序列。

n          _ (下划线):精确匹配一个字符,在汉化版中也表示一个汉字。

n          [] (方括号):指定范围 ([a-f]) 或集合 ([abcdef]) 中的任何单个字符。

n          [^] (方括号):不属于指定范围 ([^a-f]) 或集合 ([^abcdef]) 任何单个字符。

 

例 6.25  下面是一些模式串的例子。

¨          LIKE ‘5[%]’ 含义是 5 %。

¨          LIKE ‘[a-cde]’ 含义是 a,b,c,d,e 。

¨          LIKE ‘[[]’ 含义是 [ 。

¨          LIKE ‘abc[def]’ 含义是 abcd,abce,abcf 。

例 6.26  查询公司中姓赵的职工号和姓名,执行下列 SQL 语句:

select zgh,zgmc

from zhigong

where zgmc like ‘ 赵 %’

或者

select zgh,zgmc

from zhigong

where zgmc like ‘[ 赵 ]%’

在【查询分析器】中执行结果如下:

zgh  zgmc

—- ——–

627  赵一凡

688  赵永刚

 

(所影响的行数为 2 行)

 

例 6.27  查询公司中姓名中有 ‘ 一 ‘ 的职工号和姓名,执行下列 SQL 语句:

select zgh,zgmc

from zhigong

where zgmc like ‘% 一 %’

在【查询分析器】中执行结果如下:

zgh  zgmc

—- ——–

354  张一

486  李五一

627  赵一凡

 

(所影响的行数为 3 行)

例 6.28  查询公司中姓名中没有 ‘ 一 ‘ 的职工号和姓名,执行下列 SQL 语句:

    select zgh,zgmc

from zhigong

where zgmc not like ‘%[ 一 ]%’

在【查询分析器】中执行结果如下:

zgh  zgmc

—- ——–

157  李鸿

287  张国庆

309  孙越

442  胡虎

570  陈元

576  方芳

632  耿云

664  孟三

688  赵永刚

690  王四

722  黄中英

 

(所影响的行数为 11 行)

例 6.29  查询公司中姓名有两个字,后面一个字为 ‘ 一 ‘ 的职工号和姓名,执行下列 SQL 语句:

    select zgh,zgmc

from zhigong

where zgmc like ‘_ 一 ‘

在【查询分析器】中执行结果如下:

zgh  zgmc

—- ——–

354  张一

 

(所影响的行数为 1 行)

About 智足者富

http://chenpeng.info

发表评论

电子邮件地址不会被公开。 必填项已用*标注

您可以使用这些HTML标签和属性:

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>