| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 大数据 -> Mysql来帮忙:多行合并成一列 -> 正文阅读 |
|
[大数据]Mysql来帮忙:多行合并成一列 |
先还是来说下业务场景 现在有个业务需求,需要根据父类ID(pid),分别找出3条最新的数据展示出来。 如果使用group by发现每个只能显示一条。 那么怎么办? 接下来就是解决现场。 解决解决思路1、把符合条件的id串在一起组合成一个新的列 2、从列里面截取3个子项 整体SQL先直接上方案-SQL:
把符合条件的id串在一起组合成一个新的列解决方案:GROUP_CONCAT 语法
[] 中都是可选择的。例如分隔符,如果不填的话,默认使用逗号分割。 这个函数的目的,是为了把所有符合group by 结果的行,相关的列组合成一行的一个列,使用逗号把它们串在一起。 例如执行下面这个的结果就是把id串在一起。
?通过上面的这个函数,我们解决了把所有符合的列串在一起的功能了。 从列里面截取3个子项接下来是怎么实现只取后面3个了。 这里一般都是使用截取的功能。 substring_index是个比较好的函数。使用复数是把匹配的从后面开始计算。因为需求要的是最新的,根据默认排序规则asc。所以最新的在最后面,就使用复数的方式来计算了。 具体substring_index大家可以看下作者其它的文章 |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/19 22:36:38- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |