Sql Server:多行合并成一行,并做分组统计的两个方法
发布时间:2024-01-15 22:22:21
标签:分组统计
--创建 test 表 ,插入数据
CREATE TABLE test(code varchar(50), [values] varchar(10),[count] int)
INSERT test SELECT '001', 'aa',1
UNION ALL SELECT '001', 'bb',2
UNION ALL SELECT '002', 'aaa',4
UNION ALL SELECT '002', 'bbb',5
UNION ALL SELECT '002', 'ccc',3;
--方法一
--将多行合并成一行,并做分组统计
SELECT code,
[values] =
stuff(b.[values].value('/R[1]', 'nvarchar(max)'),
,
,
''),[count]
FROM (SELECT code,sum([count]) as [count]
FROM test
GROUP BY code) a
CROSS apply (
SELECT [values] =(
SELECT N',' + [values] FROM test
WHERE code = a.code
FOR XML PATH(''), ROOT('R'), TYPE
)
) b;
--方法二
---SQL2005中的新解法 使用XML
SELECT code, data=STUFF((SELECT ','+[values] FROM test t WHERE code=t1.code FOR XML PATH('')), 1, 1, ''),sum([count]) as [count]
FROM test t1
GROUP BY code
--查询结果
--001 aa,bb 3
--002 aaa,bbb,ccc 12
drop table test


猜你喜欢
- 当获取FileField数据时会出现编码问题在数据库里显示的是D:\python项目\wxmkczpy\uploadfile\QQ截图201
- 以前经常吃公司旁边的食堂,人多,排队。夏天的时候,我们总要找一个靠窗口通风好的地方坐,没有空调只有风扇,风扇很多,开关都集中在一个地方,应该
- 背景(background)在项目中经常会使用。这篇文章主要讲解的是实际项目中的5个实例。通过具体的分析来达到学习的目的。1,Li列表通过u
- 概念所有Python的对象都是扩展的PyObject,python的垃圾回收机制是计算引用,这个对象中定义了py_ssize就是用来做这个事
- 大部分新手刚学Django开发的时候默认用的都是SQLite数据库,上线部署的时候,大多用的却是Mysql。那么我们应该如何把数据库从SQL
- Python中对于数组和列表进行切片操作是很频繁的,当然对于切片的操作可供我们直接使用的函数也是很遍历了,我们今天主要简单总结一下常用集中索
- 一、torch.rand():构造均匀分布张量的方法torch.rand是用于生成均匀随机分布张量的函数,从区间[0,1)的均匀分布中随机抽
- import reimport urllib2import cookielibdef renren():
- 效果知识点:css3画气球, 自定义属性运用,随机阵列, DOM元素操作,高级回调函数与参数复传,动态布局,鼠标事件,定时器运用,CSS3新
- 1.if ...else ...判断进行断言from time import *from selenium import webdriver
- 本文实例讲述了Python实现繁体中文与简体中文相互转换的方法。分享给大家供大家参考,具体如下:工作中需要将繁体中文转换成简体中文上网找了些
- python的子进程嘛,就是利用python打开一个子进程(当然像是一句废话),但是可能和我们理解的不太一样。一:如何理解?我们可能的理解:
- 简介虽然使用Explain不能够马上调优我们的SQL,它也不能给予我们一些调整建议,但是它能够让我们了解MySQL 优化器是如何执行SQL
- 本文实例讲述了vue使用@scroll监听滚动事件时,@scroll无效问题的解决方法。分享给大家供大家参考,具体如下:在网上看了一下vue
- 被AJAX中DOM的操作郁闷了好几天,今天总算搞明白了,自学就是苦啊,苦的一把鼻涕一把泪的,把教训些出来,给后来者提个醒,老鸟就不要看了。下
- 本文实例为大家分享了bootstrap实现二级下拉菜单展示的具体代码,供大家参考,具体内容如下<!DOCTYPE html> &
- 本文实例讲述了Python实现读取字符串按列分配后按行输出。分享给大家供大家参考,具体如下:问题:输入一个字符串和一个数字,数字代表分为几行
- 代码如下:# -*- coding: utf-8 -*-#!/usr/bin/python# filename: todo.py# code
- python 如何实现Excel 的Vlookup功能1、Excel 中VLOOKUP具体步骤Excel 中的VLOOKUP使用说明采用下面
- 一个有点绕的例子,用PyScripter调试器步进跟踪可以看清楚对 象结构的具体细节。对原作改变了一下,在未定义子对象属性时__getite