数据库基础(6)使用通配符进行操作

LIKE操作符:

要过滤较为复杂的条件,就要使用通配符。利用通配符,可以创建比较特定数据的搜索模式。

百分号%通配符:最常用的通配符就是%。%表示任何字符出现任意次数。

select prod_id, prod_name
from Products
where prod_name like 'Fish%';

这条语句检索的是以Fish开头的字段全部搜索出来。搜索是可以区分大小写的。

通配符可以在搜索模式中的任意位置使用,并且可以使用多个通配符。

select prod_id, prod_name
from Products
where prod_name like '%bean bag%';

此语句表示只要中间含有bean bag字段的数据全部检索出来了。

通配符也可以出现在搜索模式的中间。除了能匹配一个或多个字符外,%还能匹配0个字符。

但%不匹配NULL值。

下划线_通配符:

下划线的用途和%一样都是匹配任一字符,但_只能匹配单一的字符。

select prod_id, prod_name
from Products
where prod_name like '__ inch teddy bear';

这里使用两个下划线来匹配数据,所以原表中的'8 inch teddy bear'就没有被检索出来,因为搜索模式要求匹配两个通配符而不是一个。

若在此处使用%将会全部检索出来。

方括号[]通配符:

方括号通配符用来指定一个字符集,它必须匹配指定位置的一个字符。

select cust_contact
from Customers
where cust_contact like '[JM]%'
order by cust_contact;

[JM]匹配方括号中的任意一个字符,它也只能匹配一个字符。所以该语句表示检索出以J或M开头的所有字段。

此通配符可以用前缀字符^来表否定。

select cust_contact
from Customers
where cust_contact like '[^JM]%'
order by cust_contact;

这里将检索出所有开头不为JM的字段。

^的唯一优点就是在使用多个where子句的时候可以简化语法。

使用通配符的技巧:

不要过度的使用通配符。

在确实需要使用通配符时,也尽量不要把它们用在搜索模式的开始处,这样是最慢的。

仔细注意通配符的位置。如果放错地方,可能不会返回相要的数据。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值