以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- [求助]SQL中如何将多列合并得到一列 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=72222) |
-- 作者:loongtai -- 发布时间:2015/7/26 10:15:00 -- [求助]SQL中如何将多列合并得到一列 如题:表A 有5列, 物料编号,到货批次,流水号,参数1,参数2 12 150721 1 13 95 12 150721 2 14 95 12 150721 3 13 96 12 150721 4 12 96 如何用sql语句得到这样一个表 合并列 , 参数1,参数2 12|150721|1 13 95 12|150721|2 14 95 12|150721|3 13 96 12|150721|3 12 96
[此贴子已经被作者于2015/7/26 10:36:46编辑过]
|
-- 作者:大红袍 -- 发布时间:2015/7/26 11:32:00 -- select 物料全编号 + \'|\' + 到货编号 + \'|\' & 流水号 as 身份, (select top 1 状态 f-rom {表1} as b where a.物料全编号 = b.物料全编号 and a.到货编号 = b.到货编号 and a.流水号 = b.流水号 order by 单据编号 desc) as 状态 f-rom {表1} as a group by 物料全编号, 到货编号, 流水号 |
-- 作者:loongtai -- 发布时间:2015/7/26 14:39:00 -- 回复:(大红袍)select 物料全编号 + '|' + 到货编号... 试了下,出现这样的错误 是不是和这三列的类型有关 物料全编号:字符型 到货编号:字符型 流水号:短整数 |
-- 作者:大红袍 -- 发布时间:2015/7/26 14:49:00 -- 物料全编号 + \'|\' + 到货编号 + \'|\' & 流水号
改成
物料全编号 + \'|\' + 到货编号 + \'|\' + Convert(nvarchar, 流水号) |