这个问题如何解决?

ygghost 2005-05-08 03:22:39
我a表的字段zdbh类似这样:
5101,5102,5104
5101,5102,5103,5104,5105,5106
5107,5108,5109,5110
5102,5103
5102

我想用b表里的字段把这些代号替换出来,比如b表里有zdbh,zdbhname.
我要用zdbhname替换a表里的这些代码!

...全文
53 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
zjcxc 2005-05-08
  • 打赏
  • 举报
回复

--写个函数完成替换处理
create function f_replace(@zdbh varchar(1000))
returns varchar(8000)
as
begin
declare @ varchar(8000)
set @=','+@zdbh+','
select @=replace(@,','+rtrim(zdbh)+',',','+rtrim(zdbhname)+',')
from b
where charindex(','+rtrim(zdbh)+',',@)>0
return(substring(@,2,len(@)-2))
end
go

--调用函数实现查询
select dbo.f_replace(zdbh) from a

27,579

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 应用实例
社区管理员
  • 应用实例社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧