`

group by字段后,其他字段的合并处理

阅读更多

自己想做一个查询,类似于

select age,name from student group by age

 但是很明显这是不能运行的,因为你把age分组了,那么name怎么处理,一般有取最大值max(name)。最小值min(name),或者如果是数字的话,还可以sum(name),但是我要做的是需要把不要同的name全部组合起来,类似于这样

18     张三,李四

20     王五,刘六

把剩下的字段给组合起来,让我看的更清晰,咨询了dba后,知道可以这样做

select age ,listagg(name,',') within GROUP (order by name) name from student group by age

 这样子就实现了我要的功能,在这里做个笔记,以免以后dba走了,或者我走了,找不到这份资料,也给各位分享一下

3
4
分享到:
评论
3 楼 文昌平蓝杰 2016-04-14  
看到那么多人踩,我先说一声,这个只是针对oracle的,我不知道其他的数据库有这功能没有
2 楼 文昌平蓝杰 2016-04-14  
532870393 写道
那如果有1000个人,他们都是18岁,查询结果岂不是很坑?

是的,他们将会被连起来,但是要做怎么样的处理是你自己定的,你可以取最大值,最小值,或者其他的函数,我这边只是记录一个我经常用的函数
1 楼 532870393 2016-03-26  
那如果有1000个人,他们都是18岁,查询结果岂不是很坑?

相关推荐

    Oracle多行记录合并

    在Oracle数据库中,多行记录的合并通常是为了将相同字段的多行数据整合成一行,以便于数据分析或者简化展示。这种操作在报表制作、数据整理等场景中非常常见。本篇文章将详细介绍Oracle中实现多行记录合并的几种方法...

    C# 中的GroupBy的动态拼接问题及GroupBy用法介绍

    废话不多说了,直接给大家贴代码了,具体代码如下所示: public class Person { public string FirstName{set;get;} public string LastName{set;get;} public Person(){} public Person(string firstName, ...

    Oracle字段转字符串/多行记录合并/连接/聚合字符串的几种方法

    在Oracle数据库中,有时我们需要将多个字段值转换为单个字符串,或者将多行记录合并成一行,这在数据处理和报告生成时尤其常见。Oracle提供了多种方法来实现这一目标,包括使用内置函数、PL/SQL过程以及一些高级特性...

    Group_by详解_完美例句

    `GROUP BY`的基本概念是将具有相同字段值的数据行合并到一起,形成一个新的数据集,每个组都有自己的特定标识,通常是某个或某些字段的值。 ### 1. `GROUP BY`语句简介 `GROUP BY`的核心功能是将原始数据集划分为...

    SQLServer中如何将一个字段的多个记录值合在一行显示

    在上面的代码中,我们使用 STRING_AGG 函数来将 `收费类别` 字段的多个记录值合并到一个字符串中,并使用 GROUP BY 子句来分组结果。 SQL Server 提供了多种方法来实现字段值的合并,每种方法都有其优缺点。用户...

    分组字符合并SQL语句 按某字段合并字符串之一(简单合并)

    标题:按某字段合并字符串之一(简单合并) 描述:将如下形式的数据按id字段合并value字段。 id value —– —— 1 aa 1 bb 2 aaa 2 bbb 2 ccc 需要得到结果: id value —— ———– 1 aa,bb 2 aaa,bbb,...

    group by用法.doc

    执行`SELECT A, B FROM table GROUP BY A`会报错,因为B字段在`GROUP BY`后没有聚合函数处理。正确的做法是使用聚合函数来合并B字段的值,如`SELECT A, COUNT(B) FROM table GROUP BY A`,这将返回每个A的值及其对应...

    Python数据分析实践:数据处理操作groupby分组new.pdf

    `groupby`函数还提供了其他参数,如`axis`(指定分组方向)、`as_index`(是否将分组列设为索引)、`sort`(是否对结果排序)等,这些参数可以根据具体需求灵活调整。 举例来说,如果你有一个包含用户购买行为的...

    mysql筛选GROUP BY多个字段组合时的用法分享

    想实现这样一种效果如果使用group by一个条件的话,得到的结果会少了很多,如何多个条件组合筛选呢 代码如下: group by fielda,fieldb,fieldc… 循环的时候可以通过判断后一个跟前面一个是否相同来分组,一个示例 代码...

    经典的SQL查询语句,将内容作为字段查询

    这些关键字帮助我们指定要选择哪些字段(SELECT),从哪个表(FROM),基于什么条件(WHERE),如何分组(GROUP BY),以及如何排序结果(ORDER BY)。 1. SELECT语句:这是SQL中最基本的部分,用于指定你希望在...

    MySQL group by对单字分组序和多字段分组的方法讲解

    在MySQL中,`GROUP BY`可以处理单个字段的分组,也可以处理多个字段的分组。下面我们将详细探讨这两种分组方法。 1. 单字段分组 在标题和描述中提到的例子中,首先根据`s_id`字段对`goods`表进行分组。这样的分组...

    SqlServer GroupConcat

    在SQL Server中,`GroupConcat`函数是一种非常实用的功能,特别是在处理聚合数据并希望返回一组字符串,而不是单个值时。然而,与MySQL等其他数据库系统不同,SQL Server原生并不支持`GroupConcat`。因此,为了在SQL...

    js 实现根据数组分组动态生成table(合并相同项)

    // 或者其他字段 row.appendChild(dataCell); }); tbody.appendChild(row); }); table.appendChild(tbody); document.body.appendChild(table); // 将表格添加到文档中 } createTable(groupedData); ``` ...

    mysql 列转行,合并字段的方法(必看)

    总结来说,MySQL的`MAX(CASE WHEN THEN END)`和`GROUP_CONCAT()`是处理数据列转换和字段合并的强大工具,它们能够帮助我们更有效地组织和展示数据库中的信息。理解并熟练运用这些函数,将有助于提高数据处理的效率和...

    mysql group_concat 实现把分组字段写成一行的方法示例

    在MySQL中,`GROUP_CONCAT` 是一个非常实用的聚合函数,它允许你在进行分组查询时,将相同分组内的多个字段值合并为一个单一的字符串,通常用于处理那些需要将多行数据整合到一行的情况。这个函数特别适用于那些需要...

    SQL Server数据库字段连接及其简化技巧.pdf

    例如,在SQL Server中,可以使用"+"运算符将两个字段合并成一个字符串。比如,如果要将`TExample`表中`姓名`和`考场编号`字段连接起来,可以使用如下SQL语句: ```sql SELECT CONCAT(ksbh, ' ', nvarchar_name, ' - ...

    DataGridView合并单元格(纵向合并及横向合并)

    比如,通过SQL的GROUP BY语句可以将相同数据聚合,从而减少在前端进行合并的需要。 最后,关于源码,"DataGridView合并单元格(纵向合并及横向合并).txt"文件很可能是包含了实现上述功能的C#代码示例。你可以打开...

    mysql合并多条记录的单个字段去一条记录编辑

    总结来说,MySQL中的GROUP_CONCAT函数配合GROUP BY语句,为我们提供了方便的工具来处理多条记录的单个字段合并。根据实际需求选择合适的方法,可以有效地对数据进行汇总和展示。在处理大量数据时,合理使用这些函数...

Global site tag (gtag.js) - Google Analytics