走向DBA[MSSQL篇] 积跬步行千里

本文介绍SQL中的数据过滤方法,包括使用通配符进行模糊匹配、范围匹配等高级查询技巧,并探讨了特殊字符的匹配方法及转义符的使用。

不知道大家对SQL系列的感不感兴趣 先在这里探个路 本文针对的读者为SQL菜鸟 欢迎大牛驳论或者补充

既然是探路篇 就先说下数据过滤中的偏门匹配 希望能给大家带来收获

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
create  table  虫子的临时表
(
    编号  varchar (30),
    名称  varchar (30),
    备注  varchar (100)
)
insert  into  虫子的临时表  values ( '编号01' , 'name01' , '这是一个奇迹' )
insert  into  虫子的临时表  values ( '编号02' , 'name02' , '这是一个神话' )
insert  into  虫子的临时表  values ( '编号039' , 'name039' , '这是一个扯谈' )
 
-- %大家都懂的
select  from  虫子的临时表  where  编号  like  '%编号%'
-- 使用‘_’匹配任意字符
select  from  虫子的临时表  where  编号  like  '编号0_'
-- 使用‘_’匹配任意字符 但是只能匹配任意单个字符
select  from  虫子的临时表  where  编号  like  '编号_'
-- 使用‘_’匹配任意字符 但是只能匹配任意单个字符 如果要表示2个字符可以用‘__’
select  from  虫子的临时表  where  编号  like  '编号__'
 
drop  table  虫子的临时表

 “_”通配符功能和“%”相似,只是“_”表示任意单个字符,且该字符只能匹配一个字符。

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
create  table  虫子的临时表
(
    昵称  varchar (30),
    座位号  int ,
    备注  varchar (100)
)
insert  into  虫子的临时表  values ( '和谐' ,15, '这是一个奇迹' )
insert  into  虫子的临时表  values ( '特色社会主义' ,29, '这是一个神话' )
insert  into  虫子的临时表  values ( '%#¥' ,31, '这是一个扯谈' )
insert  into  虫子的临时表  values ( 'Qg%Q' ,31, '这是一个扯谈' )
-- '[]'匹配某一范围内的字符
select  from  虫子的临时表  where  座位号  like  '[1-2][1-9]'
-- '[^]'匹配非某一范围内的字符
select  from  虫子的临时表  where  座位号  like  '[^1-2]_'
-- 匹配特殊字符
select  from  虫子的临时表  where  昵称  like  '%[%#]%'
-- 在模式查询中使用转义符escape
select  from  虫子的临时表  where  昵称  like  '%g%%'  escape  '/'
drop  table  虫子的临时表

“[]”通配符用于指定一系列的字符,只要满足这些字符其中之一,且位置出现在“[]”通配符的位置的字符串就满足查询条件。“[^]”来排除指定数据。like关键字可以与“[]”通配符组合来匹配特殊字符也可以使用escape关键字和转义符来实现。

下一章节和大家详细介绍下游标。



本文转自 熬夜的虫子  51CTO博客,原文链接:http://blog.51cto.com/dubing/712439

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值