问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

SQL查询语句中SELECT LIKE用法详解

发布网友 发布时间:2022-04-07 16:09

我来回答

1个回答

热心网友 时间:2022-04-07 17:38

在SQL结构化查询语言中,LIKE语句有着至关重要的作用。

LIKE语句的语法格式是:
select
*
from
表名
where
字段名
like
对应值(子串),
它主要是针对字符型字段的它的作用是在一个字符型字段列中检索包含对应子串的。

A:%
包含零个或多个字符的任意字符串:

1、LIKE'Mc%'
将搜索以字母
Mc
开头的所有字符串(如
McBadden)。

2、LIKE'%inger'
将搜索以字母
inger
结尾的所有字符串(如
Ringer、Stringer)。

3、LIKE'%en%'
将搜索在任何位置包含字母
en
的所有字符串(如
Bennet、Green、McBadden)。

B:_(下划线)
任何单个字符:

LIKE'_heryl'
将搜索以字母
heryl
结尾的所有六个字母的名称(如
Cheryl、Sheryl)。

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

1,

LIKE'[CK]ars[eo]n'
将搜索下列字符串:
Carsen、Karsen、Carson

Karson(如
Carson)。

2、LIKE'[M-Z]inger'
将搜索以字符串
inger
结尾、以从
M

Z
的任何单个字母开头的所有名称(如
Ringer)。

D:
[^]
不属于指定范围
([a-f])
或集合
([abcdef])
的任何单个字符:

LIKE'M[^c]%'
将搜索以字母
M
开头,
并且第二个字母不是
c
的所有名称(如MacFeather)。

E:
*
它同于DOS命令中的通配符,
代表多个字符:

c*c代表cc,cBc,cbc,cabdfec等多个字符。

F:
?同于DOS命令中的?通配符,
代表单个字符
:b?b代表brb,bFb等

G:
#
大致同上,
不同的是代只能代表单个数字。
k#k代表k1k,k8k,k0k。

F:
[!]
排除
它只代表单个字符

下面我们来举例说明一下:

例1,
查询name字段中包含有“明”字的。

select
*
from
table1
where
name
like
'%明%'

例2,
查询name字段中以“李”字开头。

select
*
from
table1
where
name
like
'李*'

例3,
查询name字段中含有数字的。

select
*
from
table1
where
name
like
'%[0-9]%'

例4,
查询name字段中含有小写字母的。

select
*
from
table1
where
name
like
'%[a-z]%'

例5,
查询name字段中不含有数字的。

select
*
from
table1
where
name
like
'%[!0-9]%'

以上例子能列出什么值来显而易见。
但在这里,我们着重要说明的是通配符“*”与“%”的区别。

很多朋友会问,
为什么我在以上查询时有个别的表示所有字符的时候用"%"而不用“*”?先看看下面的例子能分别出现什么结果:

select
*
from
table1
where
name
like
'*明*'

select
*
from
table1
where
name
like
'%明%'

大家会看到,
前一条语句列出来的是所有的记录而后一条记录列出来的是name字段中含有“明”的记录,
所以说当我们作字符型字段包含一个子串的查询时最好采用“%”而不用“*”,
用“*”的时候只在开头或者只在结尾时而不能两端全由“*”代替任意字符的情况下。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
黄山门户网主要栏目 壹家居品牌简介 湖南乐享生活家居有限公司一站式毛坯房解决方案 服务器出租 电脑上的时间日期不同步怎么办 台式电脑时间不同步怎么解决? 关于清明节的小学作文400字 微信怎么查询自己名下的微信 如何查看微信实名认证了几个账号 轿车120时速撞击力有多大? 男子全程使用高德地图却收到违法通知,造成的损失该有谁来承担? 用高德地图导航产生违章后果,怎么可以维权? 你在那里微笑着,并不说话,而我知道为了这刻,我已等了很久出自泰戈尔的哪篇文章 用高德地图。产生违章。怎样索赔? 泰戈尔诗集爱情诗属于哪个集 使用高德导航出现违章,怎么处理 泰戈尔诗集爱情篇《莲花》 泰戈尔诗集 除了《世界上最远的距离》,泰戈尔还有哪些关于爱情、浪漫... 泰戈尔的情诗 英文版 ?? 泰戈尔的那一首情诗,谁知道嘛?我忘了... 读后感怎么写格式 日记写看书读后感怎么写? 泰戈尔哪部诗集写爱情的诗最多? 电脑换显卡有什么要注意的吗? 读后感怎么写,格式? 泰戈尔的经典情诗有哪些 泰戈尔写有哪些经典的爱情诗歌? 泰戈尔的情诗 泰戈尔爱情诗集 泰戈尔的情诗有哪些? 高德导航路线错误导致在高速上违章,怎么处理 用高德导航导出违章了怎么办 高德地图导航出错怎么申请赔付 被高德地图导航进入禁行路段 怎么申请赔付 根据导航开车好像违章了,怎么办 开着高德导航走的 弄的违章 到底是高德不准还是车管所的问题? 高德地图对哪些地点给予出行赔付 我使用高德导航时违章了怎么办?出行保障里面怎么没有记录?驾驶成就里面有记录的 炸锅怎么炸鸡排 根据高德地图导航走的,但是我感觉好像违章了 高德地图出行助手违章查询缴费怎样投诉 关于红色经典故事演讲稿的开头怎么写 制作酥脆美味的鸡排有哪些方法? 求红色经典故事的演讲稿!(具体要求看这里) 求3分钟 红色英雄故事 演讲稿 什么是藿苏梗 马上要开展讲红色故事比赛,求一篇红色故事演讲稿,尽量是写身边的人,写老一辈*家也行,在线等 急 跪求以延安精神为主题,以故事展开,追忆红色经典的演讲稿!!1000字左右!在线等!!原创!!50分悬赏! 藿苏梗各10g 姜半夏10g 熟附片5g 生zhu石(赤者合起来zhu)30g 炒白术45g 干姜2g 云茯苓15g 生白芍15g 蒲公 藿佩梗指的是什么