当前位置:首页 » 编程语言 » like的用法sql语句

like的用法sql语句

发布时间: 2023-12-03 03:55:50

sql中like的用法

Like ‘%mr%’--------包含字符mr的任何文本;
Like ‘mr%’-----------以字符mr开头的任何文本;
Like ‘%mr’------------以字符mr结尾的任何文本;
使用’_’匹配任意单个字符;
使用’[]’匹配某一范围的字符:[a-m]表示a到m的所有字符,[0-9]表示0到9的所有数字;
使用’[^]’匹配非某一范围的字符;

❷ sql语句中like的用法详细解析

在SQL结构化查询语言中,LIKE语句有着至关重要的作用。
LIKE语句的语法格式是:select
*
from
表名
where
字段名
like
对应值(子串),它主要是针对字符型字段的,它的作用是在一个字符型字段列中检索包含对应子串的。
假设有一个数据库中有个表table1,在table1中有两个字段,分别是name和sex二者全是字符型数据。现在我们要在姓名字段中查询以“张”字开头的记录,语句如下:
select
*
from
table1
where
name
like
"张*"
如果要查询以“张”结尾的记录,则语句如下:
select
*
from
table1
where
name
like
"*张"
这里用到了通配符“*”,可以说,like语句是和通配符分不开的。下面我们就详细介绍一下通配符。
匹配类型
模式
举例及代表值
说明
多个字符
*
c*c代表cc,cBc,cbc,cabdfec等
它同于DOS命令中的通配符,代表多个字符。
多个字符
%
%c%代表agdcagd等
这种方法在很多程序中要用到,主要是查询包含子串的。
特殊字符
[*]
a[*]a代表a*a
代替*
单字符
?
b?b代表brb,bFb等
同于DOS命令中的?通配符,代表单个字符
单数字
#
k#k代表k1k,k8k,k0k
大致同上,不同的是代只能代表单个数字。
字符范围
-
[a-z]代表a到z的26个字母中任意一个
指定一个范围中任意一个
续上
排除
[!字符]
[!a-z]代表9,0,%,*等
它只代表单个字符
数字排除
[!数字]
[!0-9]代表A,b,C,d等
同上
组合类型
字符[范围类型]字符
cc[!a-d]#代表ccF#等
可以和其它几种方式组合使用
假设表table1中有以下记录:
name
sex

张小明

李明天

李a天女
王5五男
王清五

下面我们来举例说明一下:
例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字段中含有“明”的记录,
所以说,当我们作字符型字段包含一个子串的查询时最好采用“%”而不用“*”,用“*”的时候只在开头或者只在结尾时,而不能两端全由“*”代替任意字符的情况下。

❸ sql的like语句怎么用

LIKE 操作符
LIKE 操作符用于在 WHERE 子句中搜索列中的指定模式。
SQL LIKE 操作符语法
SELECT column_name(s)
FROM table_name
WHERE column_name LIKE pattern

例子 1
现在,我们希望从上面的 "Persons" 表中选取居住在以 "N" 开始的城市里的人:
我们可以使用下面的 SELECT 语句:
SELECT * FROM Persons
WHERE City LIKE 'N%'
提示:"%" 可用于定义通配符(模式中缺少的字母)。

❹ 关于SQL中LIKE的用法 例如:like 'A%'是指包含A的字符串,但如果我想排除包含A的字符串该用什么命令呢

like 'A%'第一个字母是A的字符串;
like '%A%'包含A的字符串;
not like 'A%'第一个字母不为A的字符串;
not like '%A%'不包含A的字符串;
另外:如果不包含的内容为%一类的特殊字符就需要使用[^%](不包含)了

❺ SQL语句 LIKE的用法

像这样写
select a.* from tabA a,tabB b where a.col like '%'+b.col1+'%'

❻ 在sql语句中,like所有的用法

在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 。

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

例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字段中含有“明”的记录,所以说,当我们作字符型字段包含一个子串的查询时最好采用“%”而不用“*”,用“*”的时候只在开头或者只在结尾时,而不能两端全由“*”代替任意字符的情况下。

❼ sql中的like用法

like是针对字符型的
你可以先把数字转化成字符再用like

select * from Table1 where TO_CHAR(列名) like '%1%'

热点内容
androidsdk接入 发布:2025-01-24 20:54:14 浏览:193
我的世界服务器如何使用路由器映射 发布:2025-01-24 20:49:30 浏览:739
脚本操作浏览器 发布:2025-01-24 20:41:40 浏览:296
fast自动获取ip地址服务器无响应 发布:2025-01-24 20:19:13 浏览:710
http加密数据 发布:2025-01-24 20:15:00 浏览:100
中国存储行业排名 发布:2025-01-24 20:02:21 浏览:422
arm编译链 发布:2025-01-24 19:42:12 浏览:700
linuxc的函数返回值 发布:2025-01-24 19:35:23 浏览:665
威纶编程软件反编译 发布:2025-01-24 19:30:26 浏览:49
网络存储单元 发布:2025-01-24 19:28:04 浏览:168