首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >SQL中的模糊查询like「建议收藏」

SQL中的模糊查询like「建议收藏」

作者头像
全栈程序员站长
发布2022-06-26 10:51:43
发布2022-06-26 10:51:43
2.3K00
代码可运行
举报
运行总次数:0
代码可运行

大家好,又见面了,我是你们的朋友全栈君。

首先我们创建一个Person表。

代码语言:javascript
代码运行次数:0
运行
复制
create table Person(
       cname varchar2(50),
       cage number(3)
);

插入一些数据:

代码语言:javascript
代码运行次数:0
运行
复制
insert into Person (cname,cage) values('张三',19);
insert into Person (cname,cage) values('张三丰',20);
insert into Person (cname,cage) values('张一',30);
insert into Person (cname,cage) values('慕容张三',17);

当我们知道一个人的完整名字去查询一个人时:

代码语言:javascript
代码运行次数:0
运行
复制
select * from Person where cname='张三';

这样我们就可以查询到名为张三的信息了。但是这里就有一个缺点,我们每次查询都必须要知道全名才能查询到该姓名在表中的信息,那假如我只知道他姓张或者是张某怎么办呢?我们就要用到模糊查询了。

模糊查询就需要用到like操作符。另外还有两个通配符。

1.%通配符。%表示出现任意字符,出现的字符数可以是0,1,无数。

2._通配符。_表示出现有且仅有一次字符。

(1)我们来查找一下姓名含张的信息。就会发现可以在张前后使用%通配符,因为不是张的前后是否有字符的出现,就可以用%表示

代码语言:javascript
代码运行次数:0
运行
复制
select * from Person where cname like '%张%';

查询结果:

(2)查询姓张的人的信息。这时,势必张前面是没有字符,我们不知道张后面有多少个字符,我们在张后面用%表示。

代码语言:javascript
代码运行次数:0
运行
复制
select * from Person where cname like '张%';

查询结果:

(3)在表中查询张某的信息。这时,我们知道张后面只有一个字符,我们就可以用_通配符了。

代码语言:javascript
代码运行次数:0
运行
复制
select * from Person where cname like '张_';

查询结果:

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/134085.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年6月7,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档