当前位置: 移动技术网 > IT编程>数据库>MSSQL > Sql function 多行中的列合并为一行一列的方法

Sql function 多行中的列合并为一行一列的方法

2017年12月12日  | 移动技术网IT编程  | 我要评论

爱尚养猪,面包网 奇热,吉尔尼斯渡鸦

复制代码 代码如下:

create table tb(standards varchar(50), amount varchar(50), variation varchar(50),statuss varchar(50),reason varchar(50))
insert into tb values('55','279','4','物量积压','加工人员设备不足;t排制作进度较慢;')
insert into tb values('55','279','4','物量积压','部件人员不足;')
insert into tb values('55','279','4','物量积压','跨间场地积压;图纸问题较多;')
insert into tb values('56','300','4','物量积压','aaaa;')
insert into tb values('56','300','4','物量积压','bbbb;')
insert into tb values('56','300','4','物量积压','cccc;')

create function test(@standards varchar(100))
returns varchar(8000)
as
begin
declare @re varchar(500)
set @re = ''
select @re = @re+','+reason
from tb
where @standards=standards
return (stuff(@re,1,1,''))
end

调用
复制代码 代码如下:

select distinct standards,amount,variation,statuss,reason = dbo.test('55') from tb where standards=55
select distinct standards,amount,variation,statuss,reason = dbo.test('56') from tb where standards=56

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网