MySQL GROUP_CONCAT()函数 -- 字段合并查询
在做查询的时候遇到一个问题,今天分享一下解决方法。
先看一下我想要什么效果。
清单名称类型要点,后面两列为清单步骤(外键表)
但我并不想让主表的内容重复那么多遍,于是 distinct去重、子查询、左右内连接查询 各种试 都达不到效果。
有朋友跟我说了Oracle中的WM_CONCAT() 函数 可以将多数据合并为一列 ,在MySQL中试了下 没有这个函数 就搜了一下
然后这里介绍一下Mysql的多数据合并GROUP_CONCAT()函数
通过使用DISTINCT可以排除重复值;如果希望对结果中的值进行排序,可以使用ORDER BY子句
这里我就用不到排序了,就没有使用。感兴趣的可以自己试下
但是这里发现一个问题,合并后发现他是用逗号隔开的,而我的步骤名称里自己就有逗号句号之类的符号,这该怎么拆分呢?
就用到 SEPARATOR 关键字 它是一个字符串值,缺省为一个逗号。
这里 我们发现我并没有加SEPARATOR关键字,默认就是逗号了。找到原因就好办了,看一下效果
最后附上GROUP_CONCAT()语法
GROUP_CONCAT([DISTINCT] 要连接的字段 [Order BY ASC/DESC 排序字段] [Separator '分隔符'])
MySQL GROUP_CONCAT()函数 -- 字段合并查询的更多相关文章
- mysql GROUP_CONCAT 函数 将相同的键的多个单元格合并到一个单元格
mysql GROUP_CONCAT 函数 将相同的键的多个单元格合并到一个单元格 MemberID MemberName FruitName -------------- ------------- ...
- 教您如何使用MySQL group_concat函数
MySQL group_concat函数是典型的字符串连接函数,下面就为您介绍MySQL group_concat的语法,希望对您学习MySQL group_concat函数有所帮助. MySQL g ...
- Mysql group_concat函数被截断的问题
mysql group_concat函数被截断的问题 MySQL的 group_concat 函数默认返回1024个字节长度,超过长度的会被截断.最近程序中就遇到这个问题了. 通过如下命令可以查看 ...
- mysql: 两个字段合并,字符时间转时间戳,别名字段作为where条件查询
有字段,a,b: a存的是:2016-10-10 b存的是:10:15:30 mysql将字段合并: concat(a, ' - ', b) 或者 concat(a, ' ', b) 字符时间转时间 ...
- Mysql group_concat函数列转行,与行转列
例一: SELECT num from user 1.使用group_concat函数得到列转行 select group_concat(num) from user 2.使用SUBSTRING_IN ...
- mysql—group_concat函数
MySQL中的group_concat函数的使用方法,比如select group_concat(name) . 完整的语法如下: group_concat([DISTINCT] 要连接的字段 [Or ...
- mysql 多个字段合并
group_concat 函数默认“,”合并 select p.id as patent_id,p.application_no,p.name,p.inventer,group_concat(pi.` ...
- mysql group_concat函数是有长度限制的
在表关联查询中,特别是一对多关系的表查询中,group_concat函数是很有用的一个函数,帮助我们减少对数据库查询的次数,减少服务器的压力. 但是今天使用group_concat函数查询数据库时,发 ...
- Mysql多个字段合并成一个返回
可以使用CONCAT函数进行合并: SELECT CONCAT(IFNULL(t1.CITYNAME,''),IFNULL(t1.AREANAME,''),IFNULL(t1.STREETNAME,' ...
随机推荐
- Zuhair and Strings-祖海和字符串 CodeForce#1105B
题目链接:Zuhair and Strings 题目原文 Given a string
- Spark Streaming 入门
概述 什么是 Spark Streaming? Spark Streaming is an extension of the core Spark API that enables scalable, ...
- MySQL中四种隔离级别的演示
事务的隔离是并发操作中需要理解清楚的问题.MySQL中共有4种不同的隔离级别,这4种隔离级别分别是: 隔离级别类型 影响结果 READ UNCOMMITTED(未提交读) 事务将会读取到未提交的数据, ...
- 从二叉查找树到B+树中间的各种树
高强度训练第十八天总结: 二叉查找树: 二叉查找树就是左结点小于根节点,右结点大于根节点的一种排序树,也叫二叉搜索树.也叫BST,英文Binary Sort Tree. 就长下面这吊样 查找步骤 在二 ...
- Shell之StdI/O和Pipe
目录 Shell之StdI/O和Pipe 参考 StdI/O重定向 Pipe 常用组合 Shell之StdI/O和Pipe
- chown、chgrp、chmod
1.权限对应的数值 一开始理解权限对应的数值总是要去用二进制去算例如r-x是多少rwx是多少,后来才知道r就 是4,w就是2,x就是1,不管权限怎么变,他们对应的数值就是对应位相加.. 权限对于文件来 ...
- POJ 2386——Lake Counting(DFS)
链接:http://poj.org/problem?id=2386 题解 #include<cstdio> #include<stack> using namespace st ...
- _self.$scopedSlots.default is not a function报错
问题: 当同一页面有elementUI的多个table表格时,如果用到v-if来动态展示表格,切换时出现如下报错: 原因: 是因为表格是element-ui通过循环产生的,而vue在dom重新渲染时有 ...
- Spring MVC学习 ( RESTful)
是一套规则,不同的系统之间(Vue java Python C# PHP)具体四种不同类型的HTTP 请求分别表示四种基本操作(CRUD) GET :查询(R) POST:添加(C) PUT:修改( ...
- 全面系统Python3入门+进阶课程 ✌✌
全面系统Python3入门+进阶课程 (一个人学习或许会很枯燥,但是寻找更多志同道合的朋友一起,学习将会变得更加有意义✌✌) 无论是大数据.人工智能还是机器学习,Python都是最热门的首选语言 ,这 ...