|
|
|
作者:佚名 来源:网络 时间:2005-12-9 10:43:12 浏览: |
|
|
|
|
有这样的数据
字段1 字段2 2,4,23 3,6,345 23,56,4 3,3,67
取数据的是 查询 字段1中 条件是 4 那么在字段2 在取的是6与 67 结果如下 ============ 4 6 4 67 ------------------------------------------------------------------------------- --处理示例 --测试数据 create table tb(字段1 varchar(10),字段2 varchar(10)) insert tb select ’2,4,23’ ,’3,6,345’ union all select ’23,56,4’,’3,3,67’ go --写个自定义函数来处理 create function f_value( @a varchar(10), @b varchar(10), @c varchar(10) )returns varchar(10) as begin declare @i int,@pos int select @a=left(@a,charindex(’,’+@c+’,’,’,’+@a+’,’)-1) ,@pos=len(@a)-len(replace(@a,’,’,’’))+1 ,@i=charindex(’,’,@b) while @i>0 and @pos>1 select @b=substring(@b,@i+1,8000) ,@i=charindex(’,’,@b) ,@pos=@pos-1 return(case @pos when 1 then case when @i>0 then left(@b,@i-1) else @b end else ’’ end) end go --查询 declare @a varchar(10) set @a=’23’ --查询参数 --查询语句 select A=@a,B=dbo.f_value(字段1,字段2,@a) from tb go --删除测试 drop table tb drop function f_value /*--测试结果 A B ---------- ---------- 23 345 23 3 (所影响的行数为 2 行) --*/ |
|
|
|
①
|
凡本网注明“来源:范文123网(范文网123)”的所有作品,版权均属于范文123网(范文网123),未经本网授权不得转载、摘编或利用其它方式使用上述作品。已经本网授权使用作品的,应在授权范围内使用,并注明“来源:范文123网”。违反上述声明者,本网将追究其相关法律责任。 |
| ② |
凡本网注明“来源:XXX(非范文123网)”的作品,均转载自其它媒体,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。 |
| ③ |
如因作品内容、版权和其它问题需要同本网联系的,请在30日内进行。 |
|
|