首页
学习
活动
专区
圈层
工具
发布

MySQL中concat()、concat_ws()、group_concat()函数

功能:将group by产生的同一个分组中的值连接起来,返回一个字符串结果。...语法:group_concat( distinct 要连接的字段 order by 排序字段 asc/desc )注意: 中括号是可选的分析: 通过使用distinct可以排除重复值;如果希望对结果中的值进行排序...以下我准备了几个案例 小伙伴们可以选择性的去阅读 并且把代码复制到MySQL中执行以下就可以知道用法了!...中函数是可以嵌套使用的2.一般使用group_concat()函数,必须是存在group by 分组的情况下 才能使用这个函数案例3我们再来看一个案例, 首先我们准备以下测试数据准备一个student学生表...' from student GROUP BY stuName; #--运行结果如下 mysql> select stuName, GROUP_CONCAT(score) as '当前这个学生的得分数

5.5K30
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    玩转mysql函授:concat以及group_concat

    三、group_concat()函数 前言:在有group by的查询语句中,select指定的字段要么就包含在group by语句的后面,作为分组的依据,要么就包含在聚合函数中。...(有关group by的知识请戳:浅析SQL中Group By的使用)。 例5: ? 该例查询了name相同的的人中最小的id。如果我们要查询name相同的人的所有的id呢?...—— 使用group_concat() 1、功能:将group by产生的同一个分组中的值连接起来,返回一个字符串结果。...;如果希望对结果中的值进行排序,可以使用order by子句;separator是一个字符串值,缺省为一个逗号。...3、举例: 例7:使用group_concat()和group by显示相同名字的人的id号: ? 例8:将上面的id号从大到小排序,且用'_'作为分隔符: ?

    6.5K30

    MySQL中group_concat()函数用法总结

    group_concat函数应该是在内部执行了group by语句,这是我的猜测。...,如下: group_concat(town) 北京,北京 长沙 2.测试: SELECT group_concat( town ) FROM players 结果: group_concat(...SET @@global.GROUP_CONCAT_MAX_LEN=4; global可以省略,那么就变成了:SET @@GROUP_CONCAT_MAX_LEN=4; 4.使用语句 SELECT group_concat...(town) FROM `players` 结果得到: group_concat(town) 长沙,北京,长沙,北京 结论:group_concat()函数需要与group by语句在一起使用,才能得到需要的效果...实际中什么时候需要用到这个函数? 假如需要查询的结果是这样:左边显示组名,右边想显示该组别下的所有成员信息。用这个函数,就可以省去很多事情了。

    2.3K20

    MySQL函数-concat、concat_ws、group_concat

    Mysql 函数concat、concat_ws和group_concat 本文介绍的是MySQL中3个函数的使用,主要是针对字符串的连接合并处理: concat concat_ws group_concat...concat concat()函数是将多个字符串组合在一起,形成一个大的字符串;如果连接的字符串中存在一个为NULL,则输出的结果为NULL,语法格式为: concat(str1,str2,....strn...中NULL,如果NULL本身就是字符串,则结果不相同: mysql> select concat("01","赵雷","NULL","男"); +----------------------------...合起来就是分组连接,具体语法为: GROUP_CONCAT(DISTINCT expression ORDER BY expression SEPARATOR sep); DISTINCT子句用于在连接分组之前消除组中的重复值...-- 1、将每个学生的成绩单独列出来 mysql> select s_id, group_concat(s_score) from Score group by s_id; +------+------

    3.2K10

    Mysql 函数concat、concat_ws和group_concat

    Mysql 函数concat、concat_ws和group_concat 本文介绍的是MySQL中3个函数的使用,主要是针对字符串的连接合并处理: concat concat_ws group_concat...) 3个例子说明具体使用,以下面这个表中的第一条记录为例: [008eGmZEgy1gmvmc46zvhj30lw0hwn3h.jpg] -- 1、字符之间不加连接符 mysql> select concat...中NULL,如果NULL本身就是字符串,则结果不相同: mysql> select concat("01","赵雷","NULL","男"); +----------------------------...合起来就是分组连接,具体语法为: GROUP_CONCAT(DISTINCT expression ORDER BY expression SEPARATOR sep); DISTINCT子句用于在连接分组之前消除组中的重复值....jpg] -- 1、将每个学生的成绩单独列出来 mysql> select s_id, group_concat(s_score) from Score group by s_id; +------+

    12.3K20

    concat()、concat_ws()、group_concat()函数使用

    功能:将group by产生的同一个分组中的值连接起来,返回一个字符串结果。...语法:group_concat( [distinct] 要连接的字段 [order by 排序字段 asc/desc ] [separator ‘分隔符’] ) 注意: 中括号是可选的 分析: 通过使用...以下我准备了几个案例 小伙伴们可以选择性的去阅读 并且把代码复制到MySQL中执行以下就可以知道用法了!...中函数是可以嵌套使用的 一般使用group_concat()函数,必须是存在group by 分组的情况下 才能使用这个函数 案例3 我们再来看一个案例, 首先我们准备以下测试数据 准备一个student...' from student GROUP BY stuName; #--运行结果如下 mysql> select stuName, GROUP_CONCAT(score) as '当前这个学生的得分数

    2.1K30

    MySQL GROUP_CONCAT 对应 ORACLE LISTAGG用法

    我们先来看看前人写的MySQL代码: SELECT fc.*, GROUP_CONCAT( f....尽管SQL:1999和它之后的标准加入了非聚合列查询的可行性,就是其他非聚合(不在GROUP BY 后面列出的)的列在语义及功能上依赖聚合列(能够基于聚合列完全分组),则可以在SELECT中查询非聚合列...那就是要将ONLY_FULL_GROUP_BY从sql_mode的字符串值中移除。 那如何在ORACLE上实现相同功能查询呢???...ORACLE中可没有GROUP_CONCAT函数来帮助我们将join再group by后的多行数据合并成一行。 那Oracle有没有别的类似功能的函数呢?...如果仅仅将上面MySQL写法中的GROUP_CONCAT替换成Oracle LISTAGG的写法,Oracle表示不认识你 哼!!!

    1.2K00

    Mysql案例之GROUP_CONCAT函数详解

    今天这篇文章记录一个最近开发中遇到的mysql实战场景,觉得还挺典型的,就在此做一下记录。...先看一下举例场景: mysql中学生表与学科表通过关联表建立关联,学生和学科为多对多的关系,现要求查询学生的数据,并根据学生表引用的多个学科中名称排列在前的学科的名称进行排序, 数据库表结构如下: CREATE...首先我们来看一下GROUP_CONCAT 函数的含义: GROUP_CONCAT函数 在 MySQL 中,GROUP_CONCAT 函数用于将查询结果按指定顺序连接成一个字符串。...以下是 GROUP_CONCAT 函数的基本语法: SELECT GROUP_CONCAT(column_name ORDER BY order_column SEPARATOR ',') FROM...BY s.id ORDER BY GROUP_CONCAT(c.name ORDER BY c.name) ASC; 执行结果如下: 好了,以上就是GROUP_CONCAT 函数在实战中的一个使用场景总结记录

    23K00

    mysql线上排错 group_concat_max_len group_concat函数 引起的查询数据丢失 实践笔记

    mysql线上排错 group_concat_max_len group_concat函数 引起的查询数据丢失 实践笔记 0.问题场景 1.写几个sql来验证。...0.问题场景 因为默认GROUP_CONCAT函数返回的结果大小被MySQL默认限制为1024(字节)的长度。...MySQL提供的group_concat函数可以拼接某个字段值成字符串,如 select group_concat(user_name) from sys_user,默认的分隔符是 逗号。...通过命令 “show variables like ‘group_concat_max_len’” 来查看group_concat 默认的长度: show variables like 'group_concat_max_len...修改的方式有两种: 2.1方法一:(永久生效需要重启)在MySQL的配置文件中加入如下配置: #先查询group_concat_max_len的长度 show variables like "group_concat_max_len

    3.5K10
    领券