外地客户如不方便将要进行数据恢复的储存设备(如硬盘,U盘等)送到我们数据恢复中心,可以通过快递至我数据恢复中心。

SQL Server如何使用WHERE组合百分号(%)通配符

最常使用的通配符是百分号(%) 。在搜索串中,%表示任何字符出现任意次数。例如,为了找出所有以词jet起头的产品,可使用以下SELECT语句:

SELECT prod_id,prod_ name
FROM products
WHERE prod_ name LIKE 'jet%';
prod_id prod_name
JP1000
JP2000
JetPack 1000
JetPack 2000

此例子使用了搜索模式’jet%’。在执行这条子句时,将检索任意以jet起头的词。%告诉MySQL接受jet之后的任意字符,不管它有多少字符。

区分大小写 根据MySQL的配置方式,搜索可以是区分大小写的。如果区分大小写,’jet%’与JetPack 1000将不匹配。

通配符可在搜索模式中任意位置使用,并且可以使用多个通配符。下面的例子使用两个通配符,它们位于模式的两端:

SELECT prod_id,prod_name
FROM products
WHERE prod_name LIKE "%anvi1%';
prod_id prod_name
ANV01
ANVO2
ANV03
.5 ton anvil
1 ton anvil
2 ton anvil

搜索模式’%anvil%’表示匹配任何位置包含文本anvil的值,而不论它之前或之后出现什么字符。

通配符也可以出现在搜索模式的中间,虽然这样做不太有用。下面的例子找出以s起头以e结尾的所有产品:

SELECT prod_name
FROM products
WHERE prod_ name LIKE 's%e';

重要的是要注意到,除了一个或多个字符外,%还能匹配0个字符。%代表搜索模式中给定位置的0个、1个或多个字符。

注意尾空格 尾空格可能会干扰通配符匹配。例如,在保存词anvil时,如果它后面有一个或多个空格,则子句WHERE prod_name LIKE ‘%anvil’将不会匹配它们,因为在最后的l后有多余的字符。解决这个问题的一个简单的办法是在搜索模式最后附加一个%。一个更好的办法是使用函数去掉首尾空格。

注意NULL 虽然似乎%通配符可以匹配任何东西,但有一个例外,即NULL。即使是WHERE prod_name LIKE ‘%’也不能匹配用值NULL作为产品名的行。

转载请注明:成都千喜数据恢复中心 » SQL Server如何使用WHERE组合百分号(%)通配符

喜欢 (19)or分享 (0)

您必须 登录 才能发表评论!