国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > SQL Server > 正文

sql server 中合并某個字段值的實例

2020-07-25 13:07:13
字體:
來源:轉載
供稿:網友

有表如下:

如何獲得如下結果:

解法

使用xml轉換

代碼如下:

復制代碼 代碼如下:

 CREATE TABLE body 

 ( 

     ID int, 

     BODY nvarchar(20)    

 ) 

 go 

 INSERT INTO body VALUES(1,'aaaa') 

 INSERT INTO body VALUES(2,'bbbb') 

 INSERT INTO body VALUES(1,'cccccc') 

 INSERT INTO body VALUES(3,'ddddd') 

 go 

 SELECT * FROM body 

 SELECT distinct a.ID,stuff((SELECT ','+BODY FROM body WHERE ID=a.ID FOR xml path('')),1,1,'') ASBODY 

 FROM

 body a    

 --具體思路是這樣的: 

 SELECT ','+BODY FROM body WHERE ID=a.ID FOR xml path('') 

 --這條語句的作用是按照a中的ID查找body表中ID=a.ID的所有記錄,并把它轉換成一個xml(關于將查詢集轉換成xml的文章,你可以去看看) 

 stuff((SELECT ','+BODY FROM body WHERE ID=a.ID FOR xml path('')),1,1,'') 

 --這條語句的作用是把生成的xml前面的一個逗號去掉并轉化成標量值 

 --最后用一個distinct去掉重復的記錄

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 苏尼特右旗| 海伦市| 张家界市| 广元市| 秀山| 松潘县| 棋牌| 潼关县| 内黄县| 长寿区| 瑞安市| 婺源县| 平凉市| 永泰县| 中江县| 内乡县| 乳山市| 儋州市| 无极县| 东乡| 浦县| 新巴尔虎左旗| 龙南县| 临沭县| 翁牛特旗| 黄冈市| 黄山市| 民权县| 林芝县| 三台县| 应用必备| 罗山县| 惠东县| 渭南市| 宁海县| 金寨县| 庆云县| 东乡族自治县| 浑源县| 城口县| 彰化县|