第6课 用通配符进行过滤

第6课 用通配符进行过滤

1.LIKE操作符
假设我们有一张记录考勤记录的表,里面有一列为人名,现在我们想要筛选出姓杨的人的出勤情况,则使用前面学的知识就很难解决这一问题了。这时我们就需要使用通配符来进行数据过滤了。

要想在搜索子句中使用通配符,则必须使用LIKE操作符。
(1)百分号(%)通配符
%表示任意字符出现任意次数(包括0次)
比如说:要找出所有以Fish起头的产品,则:

SELECT prod_id,prod_name
FROM Products
WHERE prod_name LIKE 'Fish%';

在这里插入图片描述
通配符可以在搜索模式中的任意位置使用,并且可以使用多个通配符
如下:

SELECT prod_id,prod_name
FROM Products
WHERE prod_name LIKE '%bean bag%';

上面的代码可以查找出任何包含“bean bag”字符串的值,无论他出现在什么位置,或前后有什么字符。
在这里插入图片描述
通配符也可以出现在搜索模式的中间
搜索以F开头,以y结尾的产品;

SELECT prod_name
FROM Products
WHERE prod_name LIKE 'F%y';

在这里插入图片描述

(2)下划线(_)通配符
_只可以匹配单个字符

SELECT prod_id,prod_name
FROM Products
WHERE prod_name LIKE '_ inch teddy bear';

在这里插入图片描述
2.课后练习
(1)编写SQL语句,从Products表中检索产品名称(prod_name)和描述(prod_desc),仅返回描述中包含toy一词的产品。

SELECT prod_name,prod_desc
FROM Products
WHERE prod_desc LIKE '%toy%';

(2)编写SQL语句,从Products表中检索产品名称(prod_name)和描述(prod_desc),仅返回描述中未出现toy一词的产品。且按产品名称对结果进行排序。

SELECT prod_name,prod_desc
FROM Products
WHERE prod_desc NOT LIKE '%toy%'
ORDER BY prod_name;

(3)编写SQL语句,从Products表中检索产品名称(prod_name)和描述(prod_desc),仅返回描述中同时出现toy和carrots的产品。

SELECT prod_name,prod_desc
FROM Products
WHERE prod_desc LIKE '%toy%' AND prod_desc LIKE '%carrots%';

(4)编写SQL语句,从Products表中检索产品名称(prod_name)和描述(prod_desc),仅返回描述中以先后顺序同时出现toy和carrots的产品。

SELECT prod_name,prod_desc
FROM Products
WHERE prod_desc LIKE '%toy%carrots%';
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值