MySQL的GROUP_CONCAT函数
先根据如下语句生成测试表并填充数据
CREATE TABLE z ( a INT, b INT);
INSERT INTO Z SELECT 1,200;
INSERT INTO Z SELECT 1,100;
INSERT INTO Z SELECT 1,100;
INSERT INTO Z SELECT 2,400;
INSERT INTO Z SELECT 2,500;
INSERT INTO Z SELECT 3,NULL;
SELECT a, GROUP_CONCAT(b)
FROM z
GROUP BY a;
GROUP_CONCAT([DISTINCT] expr [,expr ...]
[ORDER BY {unsigned_integer | col_name | expr}
[ASC | DESC] [,col_name ...]]
[SEPARATOR str_val])
DISTINCT选项可以去除重复值,ORDER选择可以对列进行排序,SEPARATOR用于选择拼接的字符串。例如上述例子中,可以对b列进行去重并按递减的顺序排序,同时用“:”拼接字符串。其SQL语句可写为:
SELECT a,GROUP_CONCAT(DISTINCT b ORDER BY b DESC SEPARATOR ':')
FROM z
GROUP BY a;
运行结果如下图
aaarticlea/png;base64,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" alt="" />
MySQL的GROUP_CONCAT函数的更多相关文章
- MySQL中group_concat函数-和group by配合使用
MySQL中group_concat函数 完整的语法如下: group_concat([DISTINCT] 要连接的字段 [Order BY ASC/DESC 排序字段] [Separator '分隔 ...
- MySQL中group_concat函数深入理解
本文通过实例介绍了MySQL中的group_concat函数的使用方法,比如select group_concat(name) . 一.MySQL中group_concat函数 完整的语法如下: gr ...
- MySQL中group_concat函数
本文通过实例介绍了MySQL中的group_concat函数的使用方法,比如select group_concat(name) .MySQL中group_concat函数完整的语法如下:group_c ...
- mysql之group_concat函数
mysql之group_concat函数 在介绍GROUP_CONCAT之前,我们先来看看concat()函数和concat_ws()函数. 先准备一个测试数据库: mysql> select ...
- 【转】mysql的group_concat函数,默认最大长度是1024
mysql的group_concat函数,默认最大长度是1024 查询sql: show variables like 'group_concat_max_len'; 设置方式: 修改配置文件my.i ...
- MySQL中group_concat函数 --- 很有用的一个用来查询出所有group by 分组后所有 同组内的 内容
本文通过实例介绍了MySQL中的group_concat函数的使用方法,比如select group_concat(name) . MySQL中group_concat函数 完整的语法如下: grou ...
- mysql中group_concat函数用法
该函数返回带有来自一个组的连接的非NULL值的字符串结果.该函数是一个增强的Sybase SQL Anywhere支持的基本LIST()函数. 语法结构: GROUP_CONCAT([DISTINCT ...
- 利用MySQL 的GROUP_CONCAT函数实现聚合乘法
MySQL 聚合函数里面提供了加,平均数.最小,最大等,可是没有提供乘法,我们这里来利用MYSQL现有的GROUP_CONCAT函数实现聚合乘法. 先创建一张演示样例表: CREATE TABLE ` ...
- MYSQL中group_concat( )函数中参数的排序方法
使用mysql中的group_concat( )函数连接指定字段时,可以先对该字段进行排序. PS:是因为二刷mysql的51道题的第12题遇到的:查询和" 01 "号同学学习的课 ...
- 关于Mysql中GROUP_CONCAT函数返回值长度的坑
1.GROUP_CONCAT函数: 功能:将group by产生的同一个分组中的值连接起来,返回一个字符串结果. 语法:group_concat( [distinct] 要连接的字段 [order b ...
随机推荐
- SEO百问
SEO 的工作过程中,大家都会碰到很多这样或那样的问题,做 SEO 随着时间慢慢变长之后,知识会慢慢地积累,之前的问题也会慢慢的都被解答.这里是码动世界为大家整理的有关 SEO 百问百答. 1. 百度 ...
- redis学习-string常用命令
keys * :查询所有的key值 set:为指定键设置对应的值 get:获取指定键的值 mset:一次传入多个键值对 mget:一次获取多个键的值 del:删除指定键 strlen:获取指定键值的长 ...
- 去掉ACM论文左下角和页眉
在\documentclass下添加如下命令: \fancyhead{} //去掉页眉 \settopmatter{printacmref=false} % Removes citation info ...
- Java学习之JDBC 2019/3/10
Java学习之JDBC 大部分的程序都是用来通过处理数据来达到人们预期的效果,数据是粮食,没有数据操作的程序就像helloworld程序一样没有用处.因此数据库操作是重中之重,是程序发挥功能的基石,j ...
- 图像处理及opencv汇总
OPENCV——C++ 1.windows基于vs2017的opencv安装 2.为opencv添加contrib库 3.opencv源码编写规则 4.OpenCV库框架结构 5.OpenCV从2到3 ...
- SLAM算法中提取特征总结
我们要知道三维空间中的点在图像中的位置,就需要提取特征与特征匹配了. 1.检测特征点 2.计算描述子 3.特征匹配 1.检测特征点 我们用到的检测特征点的方法是FAST算法,最大的特点就是快! 算法原 ...
- dialog记录
.gyzq{ &.dialog{ background: rgba(83,83,83,0.50); width: 100%; height: 100%; position: fixed; ov ...
- bootstrap概述
前面的话 Bootstrap是简单.灵活的用于搭建WEB页面的HTML.CSS.Javascript的工具集.Bootstrap基于HTML5和CSS3,具有漂亮的设计.友好的学习曲线.卓越的兼容性, ...
- 【.NET Core项目实战-统一认证平台】第四章 网关篇-数据库存储配置(2)
[.NET Core项目实战-统一认证平台]开篇及目录索引 上篇文章我们介绍了如何扩展Ocelot网关,并实现数据库存储,然后测试了网关的路由功能,一切都是那么顺利,但是有一个问题未解决,就是如果网关 ...
- Javascript高级编程学习笔记(21)—— 对象原型
JS中对象相关的最重要的恐怕就是原型链了 原型链也是JS中对象继承的实现的基础 接昨天的文章,我们使用构造函数创建对象的时候仍然存在一些问题 那就是所有的实例没法共用一个函数 这样无疑会造成极大的内存 ...