SQL多行并一行统计例子之STUFF()函数+FOR XML PATH()函数应用
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()函数应用的更多相关文章
- Sql:多行合并一行以及多条数据取时间最早的那条
有两个导数据的需求,1.一张表里面每一个订单号可能对应多条数据,每个单号返回时间最早的那条. 2.根据条件查询某个字段并按照逗号,合并在一起. 表类似结构如下: 第一条sql:select c.Id, ...
- sql 多行合一行
sql多行合并成一行 sql server SELECT [activityId], --STUFF( (SELECT ',' + Cast(A.phone AS varchar) FROM aaa ...
- SQL SERVER数据库内 FOR XML PATH 函数用法
把自己点点滴滴的学习记录下来!!!! 一.FOR XML PATH 简单介绍 那么还是首先来介绍一下FOR XML PATH ,假设现在有一张兴趣爱好表(TBJTXXCE)用来存放就诊患者信息,表结构 ...
- sql 多行转换为一行
select 字段1, [val]=( select 字段2 +',' from 表名 as b where b.字段1 = a.字段1 for xml path('')) from 表名 as a ...
- sql多行转一行,以逗号隔开
--SELECT ff= stuff((select ','+cast(WorkOrderNo as varchar)-- FROM dbo.TB_WorkOrder c -- where tpl.P ...
- SQL 多行合并一行
select stuff((select ',' + CONVERT(VARCHAR(50),id)+'' from tab_menu group by id for xml path('')), ...
- sql 多行、一行 互转
原始数据: 期望数据: IF OBJECT_ID('temp_20170701','u') IS NOT NULL DROP TABLE temp_20170701 CREATE TABLE temp ...
- sql server 多条数据字段合并及创建临时表 FOR XML PATH
SELECT 字段=(SELECT b.合并字段+',' FROM 表一 AS b WHERE b.相同条件=a.相同条件 FOR XML PATH('')) FROM 表一 AS a DECLARE ...
- sql多行多列重复
在sql的查询中我们会遇到查询的结果比如这样的: 查询这张表的sql语句: select r.ROLE_NAME,u.USERID,u.USERNAME,u.TrueName from BASE_ ...
随机推荐
- Uploadify在asp.net下使用Demo
为了使自己以后不再去网上搜索,特记录下来 从uploadify官网http://www.uploadify.com/上下载文件 必要的文件: 1.jquery的js文件 2.jquery.upload ...
- python开发初识函数:函数定义,返回值,参数
一,函数的定义 1,函数mylen叫做函数名 #函数名 #必须由字母下划线数字组成,不能是关键字,不能是数字开头 #函数名还是要有一定的意义能够简单说明函数的功能 2,def是关键字 (define) ...
- gevent异步,io自动切换
#!/usr/bin/env python # encoding: utf-8 # Date: 2018/6/19 # # from gevent import monkey # 这俩行必须放在首 ...
- 基于angularJs+ui-router+bootstrap风格的表格生成指令
1 /** 根据参数定制表格 * api接口: * form-model:[item1,item2,item3] * form-properties:[ * {key:'',label:'',thCl ...
- a标签的四个伪类是什么?如何排序?为什么?
爱恨分明原则: l v h a 注释:为了产生预期的效果,在 CSS 定义中,a:hover 必须位于 a:link 和 a:visited 之后 ! 注释:为了产生预期的效果,在 CSS 定义中,a ...
- leetcode908
int smallestRangeI(vector<int>& A, int K) { int min = INT_MAX; int max = INT_MIN; for (aut ...
- 3.使用Maven构建Web项目
转自:https://blog.csdn.net/m261030956/article/details/46481837 从网上查了一些资料,才算明白(也就是怎么操作吧),怎么使用Maven构建一个W ...
- ClientDataSet1.LoadFromStream
lStream3.Position := 0; lDataSet.LoadFromStream(lStream3);
- zabbix监控MySQL部署实战
1.部署zabbix监控. 1.1 建用户组和用户 groupadd zabbix useradd -d /home/zabbix -g zabbix -m zabbix passwd zabbix ...
- LibEvent代码阅读--多缓冲区和零拷贝技术
http://blog.chinaunix.net/uid-20937170-id-4827550.html