将一张表中的数据根据某行数据合并,并将另一行数据以逗号分隔合并

原创 2015年11月20日 08:55:50
------将一张表中的数据根据某行数据合并,并将另一行数据以逗号分隔合并--------
--建测试表
CREATE TABLE test(id int, VALUE NVARCHAR(30))
--插入测试数据
INSERT INTO test(id,value)VALUES(1,'aa')
INSERT INTO test(id,value)VALUES(1,'bb')
INSERT INTO test(id,value)VALUES(1,'cc')
INSERT INTO test(id,value)VALUES(2,'cc')
INSERT INTO test(id,value)VALUES(2,'cc')
INSERT INTO test(id,value)VALUES(3,'cc')
INSERT INTO test(id,value)VALUES(3,'cc')


SELECT id,value FROM dbo.test


-----需求为将同一个id的values合并以逗号分隔。
-----使用自连接和for xml path('')

SELECT id,valuelist=(SELECT ','+value FROM test a WHERE a.id=b.id FOR XML PATH('')) FROM test b GROUP BY id


-----将开始逗号去掉

SELECT id,valuelist=STUFF((SELECT ','+value FROM test a WHERE a.id=b.id FOR XML PATH('')),1,1,'') FROM test b GROUP BY id



版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

MySQL 一表中字段内容是用逗号分隔的 另一表含有对应数据的两表联合查询

有时为了数据库简洁,存放数据的时候,某一字段采用逗号隔开的形式进行存储。 一般情况这个字段都应该具有如下几个共性。 被分割的字段一定是有限而且数量较少的,我们不可能在一个字符串中存储无限多个字符这个...

gnuplot 读取逗号分隔的数据文件

有时,我们的数据文件中各个数据之间是用逗号作为分隔符的,比如标准的以“CSV”为后缀的那种数据文件。如果在逗号之后没有空格分隔,默认情况下gnuplot是无法直接读取的。 这时可以有两种方案,第一种是...

C语言从txt文本中读取多行用逗号分隔的数据

例如数据为: 0.5712,0.45356,0.74399 0.58775,0.4721,0.77793 0.51964,0.42228,0.69693 将每一列的数据保存在一个double型...

修改文件中某行数据

  • 2015-09-02 10:08
  • 208KB
  • 下载

MERGE语句用来合并UPDATE和INSERT语句,一张表的大数据操作,要同时进行增删改,提高性能

该命令使用一条语句从一个或者多个数据源中完成对表的更新和插入数据. ORACLE 9i 中,使用此命令必须同时指定UPDATE 和INSERT 关键词,ORACLE 10g 做了如下改动。 1,in...

不能删除Excel某行数据时,提示: "该 ISAM 不支持在链接表中删除数据"解决方法

不能删除Excel某行数据时,提示: "该 ISAM 不支持在链接表中删除数据"解决方法C#2010-07-15 22:26:51阅读204评论0  字号:大中小 订阅原来Excel不支持删除,DEL...

常老师受邀为某行数据中心做项目管理辅导培训

2014年6月4日,在工行数据中心常老师为产创部的五个部门项目骨干,就目前正在进行的项目进行第二轮的辅导。这是本次辅导的第一天,主要辅导内容包括回顾项目管理的概念、工作方法以及探讨项目的难点和面临的问...

gridview分页以及点击按钮选取某行数据

addScope.aspxCode: "C#" AutoEventWireup="true" CodeFile="addScope.aspx.cs" Inherits="addScope&quo...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)