加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

sqlserver把一列中的多行数据在一行显示

发布时间:2020-12-12 14:11:39 所属栏目:MsSql教程 来源:网络整理
导读:表jizhan region cell station zaipin fujiao tianxian 建邺 应天路1 应天路 5 6 90 建邺 应天路2 应天路 6 9 200 建邺 应天路3 应天路 3 6 310 玄武 1101厂1 1101厂 3 8 310 玄武 1101厂2 1101厂 3 10 90 玄武 1101厂3 1101厂 4 8 230 白下 511招待所1 511

表jizhan

region cell station zaipin fujiao tianxian
建邺 应天路1 应天路 5 6 90
建邺 应天路2 应天路 6 9 200
建邺 应天路3 应天路 3 6 310
玄武 1101厂1 1101厂 3 8 310
玄武 1101厂2 1101厂 3 10 90
玄武 1101厂3 1101厂 4 8 230
白下 511招待所1 511招待所 4 12 340
白下 511招待所2 511招待所 4 11 140
白下 511招待所3 511招待所 6 12 240

需要转换成如下格式

region station zaipin fujiao tianxian
白下 511招待所 4/4/6 12/11/12 340/140/240
白下 八宝前街 5/7 14/14 90/260
白下 白下安居 6/4/3/2 13/6/6/22 0/130/240/280
白下 白下工业园T 3/6/4 9/9/8 0/120/240
白下 白下路 4/5/5 7/10/13 300/120/260
白下 白下社区中心RRH 6/6 10/10 70/330
白下 仓波门 5/6/2 6/6/6 0/120/240
白下 长白街 7/8/7 17/17/14 10/180/250
白下 超级基站-江宁移动_备 8/6/6 12/12/10 0/120/240

方法:

CREATE FUNCTION zaipin_COMBINESTR(@region varchar(50),@station varchar(100))
RETURNS NVARCHAR(100)
AS?
BEGIN
? DECLARE ?@SQL NVARCHAR(100)
? SET @SQL=N''
? SELECT @SQL=@SQL+N'/' + zaipin?FROM jizhan WHERE region=@region and station=@station
? RETURN STUFF(@SQL,1,'')
END
GO


CREATE FUNCTION fujiao_COMBINESTR(@region varchar(50),@station varchar(100))
RETURNS NVARCHAR(100)
AS?
BEGIN
? DECLARE ?@SQL NVARCHAR(100)
? SET @SQL=N''
? SELECT @SQL=@SQL+N'/' + fujiao FROM jizhan WHERE region=@region and station=@station
? RETURN STUFF(@SQL,'')
END
GO


CREATE FUNCTION tianxian_COMBINESTR(@region varchar(50),@station varchar(100))
RETURNS NVARCHAR(100)
AS?
BEGIN
? DECLARE ?@SQL NVARCHAR(100)
? SET @SQL=N''
? SELECT @SQL=@SQL+N'/' + tianxian FROM jizhan WHERE region=@region and station=@station
? RETURN STUFF(@SQL,'')
END
GO


SELECT region,station,zaipin=DBO.zaipin_COMBINESTR(region,station),fujiao=DBO.fujiao_COMBINESTR(region,tianxian=DBO.tianxian_COMBINESTR(region,station) FROM jizhan GROUP BY region,station

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读