表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
(编辑:李大同)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|