您的位置:首页 > 数据库

【数据库SQL】查找特殊字符语句的使用案例

2017-01-03 13:00 411 查看
--针对商品货号-商品为字母数字和下划线组成--

--95 _

--65-90 A-Z

--97-122 a-z

--48-57 0-9

create table #tab_item_no(t_id decimal(18,0) identity(1,1),item_no varchar(40))

create table #tab_item_no_rtn(t_id decimal(18,0) identity(1,1),item_no varchar(40))

declare @ll_count decimal(18,0),@ll_len int,@ll_ascii int,@ls_item_no varchar(40)

insert into #tab_item_no

select item_no from t_bd_item_info with(nolock)

set @ll_count = 0

select @ll_count = count(*) from #tab_item_no

while @ll_count > 0

begin

set @ls_item_no = ''

select @ls_item_no = item_no from #tab_item_no where t_id = @ll_count

set @ll_len = 0

set @ll_len = LEN(@ls_item_no)

while @ll_len > 1

begin

set @ll_ascii = ascii(substring(@ls_item_no,@ll_len,1))

if not ((@ll_ascii >= 65 and @ll_ascii <= 90) or (@ll_ascii >= 97 and @ll_ascii <= 122) or (@ll_ascii >= 48 and @ll_ascii <= 57) or @ll_ascii = 95 )

begin

insert into #tab_item_no_rtn

select item_no from #tab_item_no where t_id = @ll_count

set @ll_len = 0

end

else

set @ll_len = @ll_len - 1

end

set @ll_count = @ll_count - 1

end

select *,'含特殊字符的货号' from #tab_item_no_rtn

drop table #tab_item_no

drop table #tab_item_no_rtn
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: