SQL查询多条进行合并
无论是在sql 2000,还是在 sql 2005 中,都没有提供字符串的聚合函数,
所以,当我们在处理下列要求时,会比较麻烦:
有表tb, 如下:
id value
1 aa
1 bb
2 aaa
2 bbb
2 ccc
需要得到结果:
id values
1 aa,bb
2 aaa,bbb,ccc
即, group by id, 求 value 的和(字符串相加)
- 旧的解决方法
– 1. 创建处理函数
CREATE FUNCTION dbo.f_str(@id int)
RETURNS varchar(8000)
AS
BEGIN
DECLARE @r varchar(8000)
SET @r = ‘’
SELECT @r = @r + ‘,’ + value
FROM tb
WHERE id=@id
RETURN STUFF(@r, 1, 1, ‘’)
END
GO
– 调用函数
SELECt id, values=dbo.f_str(id)
FROM tb
GROUP BY id
– 2. 新的解决方法
– 示例数据
DECLARE @t TABLE(id int, value varchar(10))
INSERT @t SELECT 1, ‘aa’
UNION ALL SELECT 1, ‘bb’
UNION ALL SELECT 2, ‘aaa’
UNION ALL
SQL查询多条进行合并相关推荐
- SQL查询多条只取其中最新的一条数据
首先 查询表fp_studentItem中的studentid=1:有5条数据,我只想要id=163的最新数据 两种方法: 1.SELECT * FROM fp_studentItem where ...
- sql 查询记录条数
--查询条数 SELECT rows FROM sysindexes WHERE id = OBJECT_ID('PerCardPositionHist') AND indid < 2
- sql查询前10条、第11条到第15条数据
SQL查询10条数据 查询前10条数据 查询第11条到第15条数据 查询前10条数据 MySQL.PostgreSQL使用limit select * from 表名 order by id(主键)l ...
- mysql 两条sql合并_两条查询SQL的语句的数据合并到一起
大神们好,我目前遇到这样一个问题. 我现在有一个SQL语句A,SELECT TABLE_NAME table_name, COLUMN_NAME id, DATA_TYPE str, IS_NULLA ...
- 写一个sql实现以下查询结果_书写高质量SQL的30条建议
以下文章来源:后端程序员必备:书写高质量SQL的30条建议 1.查询SQL尽量不要使用select *,而是select具体字段. 反例子: select * from employee; 正例子: ...
- MYSQL 单表一对多查询,将多条记录合并成一条记录
MYSQL 单表一对多查询,将多条记录合并成一条记录 一.描述: 在MySQL 5.6环境下,应工作需求:将一个表中多条某个相同字段的其他字段合并(不太会表达,有点绕,直接上图) 想要达到的效果: 实 ...
- sql查询前50条_您必须知道的前50条SQL查询
sql查询前50条 In this article, we'll go over the most common SQL queries that you should know to be able ...
- sql 查询重复数据大于2条以上的_「干货」关于SQL书写建议 索引优化的总结,你值得拥有...
前言 平时写sql写的比较多,一直没把优化相关的知识整理记录下来,本文章记录对SQL优化的一些技巧: 我将结合demo(一个百万级数据表),去实践验证这些优化技巧. 测试用例 接下来,我们创建一个测试 ...
- 各数据库SQL查询结果多行数据合并成一行
SQL查询结果多行数据合并成一行 一.Oracle函数多行数据合并成一行 二.Mysql函数多行数据合并成一行 三.sqlserver函数多行数据合并成一行 四.postgresql函数多行数据合并成 ...
最新文章
- 美妆彩妆宣传PPT模板
- [转载]offsetHeight , clientHeight, scrollHeight 区别
- python画三维立体图-如何用Matplotlib 画三维图的示例代码
- xp下msn8.5无法安装的解决办法
- 编写一个自己的完全C语言版本的memset函数,并且评价这个实现的性能和可移植性。
- 【css练习】斑马线表格,美人尖,断线下划线
- 继承,经典类与新式类的MRO,C3算法,super
- cenos安装erlang
- mysql索引的方法_mysql索引类型和索引方法
- Aha!设计模式(96)-观察者模式(1)
- C语言题目:平均成绩,已知某个同学的语文、数学、英语成绩,计算该同学的平均分
- 什么是侧翼区(flanking region)和侧翼区单核苷酸多态性(Flanking SNPs)
- 软件需求包括3个不同的层次 业务需求 用户需求和功能需求
- C. Product 1 Modulo N
- 游戏对战匹配逻辑小结
- Python的图像处理库(OpenCV,PIL,matplotlib和scikit-image)
- 骁龙8gen1Plus和骁龙8gen1区别
- WL算法(来自graph-bert)
- Runc 容器初始化和容器逃逸
- Linux/Unix操作系统mac地址怎么查