`
terry0501
  • 浏览: 313611 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

mysql之group_concat函数详解

 
阅读更多
函数语法:

group_concat( [DISTINCT]  要连接的字段   [Order BY 排序字段 ASC/DESC]   [Separator '分隔符'] )

下面举例说明:

select * from goods; 

+------+------+
| id| price|
+------+------+
|1 | 10|
|1 | 20|
|1 | 20|
|2 | 20|
|3 | 200 |
|3 | 500 |
+------+------+
6 rows in set (0.00 sec)

以id分组,把price字段的值在同一行打印出来,逗号分隔(默认)

select id, group_concat(price) from goods group by id; 

+------+--------------------+
| id| group_concat(price) |
+------+--------------------+
|1 | 10,20,20|
|2 | 20 |
|3 | 200,500|
+------+--------------------+
3 rows in set (0.00 sec)

以id分组,把price字段的值在一行打印出来,分号分隔

select id,group_concat(price separator ';') from goods group by id; 
+------+----------------------------------+
| id| group_concat(price separator ';') |
+------+----------------------------------+
|1 | 10;20;20 |
|2 | 20|
|3 | 200;500 |
+------+----------------------------------+
3 rows in set (0.00 sec)

以id分组,把去除重复冗余的price字段的值打印在一行,逗号分隔
select id,group_concat(distinct price) from goods group by id; 

+------+-----------------------------+
| id| group_concat(distinct price) |
+------+-----------------------------+
|1 | 10,20|
|2 | 20 |
|3 | 200,500 |
+------+-----------------------------+
3 rows in set (0.00 sec)

以id分组,把price字段的值打印在一行,逗号分隔,按照price倒序排列
select id,group_concat(price order by price desc) from goods group by id; 

+------+---------------------------------------+
| id| group_concat(price order by price desc) |
+------+---------------------------------------+
|1 | 20,20,10 |
|2 | 20|
|3 | 500,200|
+------+---------------------------------------+
3 rows in set (0.00 sec)
分享到:
评论

相关推荐

    【GROUP_CONCAT】使用之MySQL官方文档翻译

    ### GROUP_CONCAT 函数详解 #### 一、概述 `GROUP_CONCAT` 是 MySQL 中一个非常实用的聚合函数,主要用于将来自同一分组的多个值连接成一个字符串。这一功能在许多场景下都非常有用,例如汇总数据、创建列表等。 ...

    MySQL拼接字符串函数GROUP_CONCAT详解

    MySQL中的GROUP_CONCAT函数是一个非常实用的聚合函数,主要用于在分组查询中将同一组内的多个值合并为一个字符串,通常用于数据汇总和报告。它能够处理非NULL值,并且可以进行排序、去重和自定义分隔符,极大地提高...

    Mysql的GROUP_CONCAT()函数使用方法

    ### MySQL的GROUP_CONCAT()函数使用详解 在MySQL中,`GROUP_CONCAT()`是一个非常实用且强大的聚合函数,主要用于将一组值连接成一个字符串。它常用于查询中,特别是需要将多个行的数据合并到一行时。本文将详细介绍...

    详解MySQL中concat函数的用法(连接字符串)

    总结来说,MySQL中的`CONCAT`、`CONCAT_WS`和`GROUP_CONCAT`函数提供了强大的字符串处理能力,允许你灵活地连接和组合字符串,以满足不同的查询需求。在处理大量文本数据时,这些函数是数据库查询中不可或缺的一部分...

    oracle合并列的函数wm_concat的使用详解

    最后,关于可能感兴趣的相关文章,包括Oracle中多行记录合并、连接、聚合字符串的不同方法,以及如何在Oracle中实现类似功能的其他技术,如使用`GROUP_CONCAT`(这是MySQL中的一个函数,Oracle没有直接对应的内置...

    详解mysql中的concat相关函数

    总结,`CONCAT`、`CONCAT_WS`和`GROUP_CONCAT`都是MySQL中处理字符串连接的重要函数,它们在不同的场景下提供了灵活的数据组合方式。理解并熟练使用这些函数,可以提升你在数据库操作中的效率,特别是在处理复杂的...

    mysql字符串连接函数

    ### MySQL字符串连接函数详解 在处理数据库中的字符串操作时,MySQL提供了多种强大的工具来帮助我们进行数据处理。本文主要介绍几种常用的字符串连接函数,包括`CONCAT()`、`CONCAT_WS()`以及`GROUP_CONCAT()`函数...

    lib_mysqludf_json-master.zip

    《MySQL UDF库函数与JSON格式转换详解》 在MySQL数据库管理系统中,有时我们需要将关系型数据转换为JSON格式,以便于数据交换、存储或处理。`lib_mysqludf_json`是一个用户定义的函数(User Defined Function, UDF...

    MySQL常用聚合函数详解

    一、AVG AVG(col) 返回指定列的平均值 二、COUNT COUNT(col) 返回指定列中非NULL值...GROUP_CONCAT([DISTINCT] expr [,expr …]  [ORDER BY {unsigned_integer | col_name | expr}  [ASC | DESC] [,col_name …]]  

    mysql实现查询数据并根据条件更新到另一张表的方法示例

    4. **GROUP_CONCAT函数详解**: `GROUP_CONCAT`函数在MySQL中用于将同一组的某个列的值合并为一个字符串,用指定的分隔符(默认为逗号)分隔。它接受几个可选参数: - `DISTINCT`:去除重复的值。 - `ORDER BY`:...

    用Distinct在MySQL中查询多条不重复记录值,绝对的物有所值

    通过上述分析,我们了解到`DISTINCT`关键字在MySQL中的运用远不止去除简单重复值这么简单,它与`GROUP BY`、`COUNT`、`GROUP_CONCAT`等其他SQL功能结合,能够应对更为复杂的查询需求,极大地提升了数据处理的灵活性...

    MySQL常用函数的举例及例子

    ### MySQL常用函数详解 #### 一、数学函数 在MySQL中,数学函数是处理数值数据的基本工具之一。这些函数能够帮助我们执行简单的算术运算、数值转换以及进行数学计算。 - **ABS(x)**:返回`x`的绝对值。例如,`ABS...

    linux上mysql5.7安装教程word版本

    - `group_concat_max_len = 4294967295`:增加GROUP_CONCAT函数返回的最大长度。 - `max_connections = 1000`:设置最大连接数。 - `table_open_cache = 6000`:缓存表的数量。 - `thread_cache_size = 50`:...

    MySQL多种递归查询方法.docx

    `CONCAT`, `CONCAT_WS`, `GROUP_CONCAT`函数 - **`CONCAT`**: 连接两个或多个字符串值。 - **`CONCAT_WS`**: 使用指定分隔符连接字符串值。 - **`GROUP_CONCAT`**: 将多行数据合并成一个字符串。 **示例**: ```...

    MySQL常用函数大全

    ### MySQL常用函数详解 #### 数学函数 - **ABS(x)**: 返回参数`x`的绝对值。 - **BIN(x)**: 将十进制数字`x`转换为二进制字符串表示。 - **CEILING(x)**: 返回不小于`x`的最小整数值。 - **EXP(x)**: 返回`e`的`x`...

    php手工注入.doc

    3. **使用`GROUP_CONCAT`和`LIMIT`**:为了快速获取所有表名,攻击者可以使用`GROUP_CONCAT`函数将多个表名合并为一个字符串,然后通过`CONCAT`函数在结果中插入分隔符。这比逐个尝试`LIMIT`更有效率。 4. **字段...

    mysql常用函数

    ### MySQL常用函数详解 MySQL作为一款广泛使用的开源关系型数据库管理系统,在数据管理方面提供了丰富的功能。其中,函数是实现各种复杂操作的重要工具之一。本文将详细介绍MySQL中的几类常用函数,包括数学函数、...

Global site tag (gtag.js) - Google Analytics