首页 > 数据库技术 > 详细

SQL多行并一行统计例子之STUFF()函数+FOR XML PATH()函数应用

时间:2018-01-24 00:07:39      阅读:293      评论:0      收藏:0      [点我收藏+]
SELECT * FROM tbiz_ProjectRelation

技术分享图片

目标统计每个项目有几条申请记录

Step1

SELECT  ProjectID ,
        RelationIDs = STUFF(( SELECT , + CONVERT(VARCHAR,[RelationID]) FROM  tbiz_ProjectRelation t WHERE ProjectID = t1.ProjectID FOR XML PATH(‘‘)), 1, 1, ‘‘)
FROM tbiz_ProjectRelation t1

Step2

SELECT  ProjectID ,
        RelationIDs = STUFF(( SELECT , + CONVERT(VARCHAR,[RelationID]) FROM  tbiz_ProjectRelation t WHERE ProjectID = t1.ProjectID FOR XML PATH(‘‘)), 1, 1, ‘‘)
FROM tbiz_ProjectRelation t1 GROUP BY ProjectID

Step3

SELECT  ProjectID ,
        RelationIDs = STUFF(( SELECT , + CONVERT(VARCHAR,[RelationID]) FROM  tbiz_ProjectRelation t WHERE ProjectID = t1.ProjectID FOR XML PATH(‘‘)), 1, 1, ‘‘),
        COUNT([RelationID]) AS [COUNT]
FROM tbiz_ProjectRelation t1 GROUP BY ProjectID

技术分享图片

 

SQL多行并一行统计例子之STUFF()函数+FOR XML PATH()函数应用

原文:https://www.cnblogs.com/zhuji/p/8338357.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!