------其他解决方案-------------------- 中间插个%不就行咯,干嘛要用_ ------其他解决方案-------------------- select * from 表 where repalce(字段,'?','')=查询值 ------其他解决方案-------------------- create table #t
([id][int] identity(1,1) not null,
[col][varchar][10] not null,
constraint (tPK) priamry key clustered
)
insert into #t
(select 1,abc?def union all
select 2,bcef??g union all
select 3,a??efg
) from #t
update #t
set col=replace(col,'?','') where col='abc?def'
go
update #t
set col=replace(col,'bcef??g''aabefg') where col='bcef??g'
go ------其他解决方案-------------------- select * from 表 where @str like '%'+replace(col1,'?','_')+'%' ------其他解决方案-------------------- 这样写 只有给定字符串和 数据库中字符串 长度一致的时候才行啊 ------其他解决方案-------------------- 我开始的想法中 ? 表示任何单个字符 ,只要这一段 能匹配 就算满足条件 ------其他解决方案-------------------- 中间匹配的数目是固定的
%号 我试 了下 ,不成功