首页 新闻 会员 周边

关于SQL中like的用法问题请教

0
悬赏园豆:10 [已关闭问题] 关闭于 2009-12-17 18:03

在SQLSERVER中 比如我要查询已'02'的字符串,并且02在跟字符串中只出现一次的所有字段 怎么查询

比如字段有:

02

0201

0202

020201

要查询得到的结果是:

02

0201

 

無獨有偶的主页 無獨有偶 | 初学一级 | 园豆:43
提问于:2009-12-05 13:33
< >
分享
所有回答(4)
0

用CharIndex函数完美解决。

dege301 | 园豆:2825 (老鸟四级) | 2009-12-05 14:02
0

select * from table1 where column1 like '%02% ' and column1 not like '%02%02%'

Frank Chu | 园豆:205 (菜鸟二级) | 2009-12-05 14:16
要是出现020102这样的怎么办?
支持(0) 反对(0) 天堂口 | 园豆:514 (小虾三级) | 2009-12-06 14:17
0

代码
declare @t table(value varchar(10))

insert @t
select '02'
union all
select '0201'
union all
select '0202'
union all
select '020201'


declare @str varchar(10)
set @str='02'
select * from @t where len(value)-len(replace(value,@str,''))=len(@str)

 

如果要得到出现n次的,最后的len(@str)换成n*len(@str)就可以了。

清海扬波 | 园豆:825 (小虾三级) | 2009-12-05 15:25
非常不错,正确的答案
支持(0) 反对(0) 天堂口 | 园豆:514 (小虾三级) | 2009-12-06 14:16
0

mark

Jaryleely | 园豆:367 (菜鸟二级) | 2009-12-05 17:14
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册