如何用SQL将同一个ID下的列内容合并?
如有数据表D,其内容如下:IDC1C2C3C4.......Cn-1CnAabcd........x1y1Aabcd........x2y2Aabcd........x3...
如有数据表D,其内容如下:
ID C1 C2 C3 C4.......Cn-1 Cn
A a b c d........ x1 y1
A a b c d........ x2 y2
A a b c d........ x3 y3
B e f g h........ x4 y4
B e f g h........ x5 y5
.............................................................
用SQL将上表变为ID唯一,合并同一个ID的Cn-1、Cn列
ID C1 C2 C3 C4.......Cn-1 Cn
A a b c d........ x1/x2/x3 y1/y2/y3
B e f g h........ x4/x5 y4/5
.......................................... 展开
ID C1 C2 C3 C4.......Cn-1 Cn
A a b c d........ x1 y1
A a b c d........ x2 y2
A a b c d........ x3 y3
B e f g h........ x4 y4
B e f g h........ x5 y5
.............................................................
用SQL将上表变为ID唯一,合并同一个ID的Cn-1、Cn列
ID C1 C2 C3 C4.......Cn-1 Cn
A a b c d........ x1/x2/x3 y1/y2/y3
B e f g h........ x4/x5 y4/5
.......................................... 展开
2个回答
展开全部
不知道你是用的什么数据库,又是要用什么语言,我给你写个ASP的吧 for i = 1 to 5 sql = "UPDATE [表名] SET [id] = [id" & i & "] WHERE [id] = NULL" conn.execute(sql) next 不明白再问 ------------------>> 用我这个笨方法吧复制下面SQL语句到MS SQL 的SQL查询分析器,把表名改为你的表名,运行就OK了 UPDATE [表名] SET [id] = [id1] WHERE [id] = NULL UPDATE [表名] SET [id] = [id2] WHERE [id] = NULL UPDATE [表名] SET [id] = [id3] WHERE [id] = NULL UPDATE [表名] SET [id] = [id4] WHERE [id] = NULL UPDATE [表名] SET [id] = [id5] WHERE [id] = NULL
很不错哦
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
什么数据库?
更多追问追答
追问
Oracle数据库
追答
Oracle 个数少可以实现的,提供思路
SELECT ID, C1, C2, C3, C4,
MAX(CASE WHEN rk = 5 THEN C5 ELSE '' END) || '/'||
MAX(CASE WHEN rk = 6 THEN C6 ELSE '' END) || '/'||
.....
MAX(CASE WHEN rk = n THEN Cn ELSE '' END)
FROM (SELECT ID, C1, C2, C3, C4....Cn-1, Cn, ROW_NUMBER() OVER(PARTITION BY ID ORDER BY C1,C2,C3....Cn-2) rk FROM 数据表D) t
GROUP BY ID, C1, C2, C3, C4...Cn
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询