如何用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
..........................................
展开
 我来答
荀缀哈
2012-04-02
知道答主
回答量:72
采纳率:0%
帮助的人:21.9万
展开全部
不知道你是用的什么数据库,又是要用什么语言,我给你写个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 很不错哦
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
flyingFish211
2012-04-02 · TA获得超过2.1万个赞
知道大有可为答主
回答量:1.5万
采纳率:50%
帮助的人:1.1亿
展开全部
什么数据库?
更多追问追答
追问
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
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式