使用SQL将多行记录合并成一行实例代码

 更新时间:2022年09月13日 09:54:06   作者:晓之以理的喵~~  
今天同事问了一个需求,就是将多行数据合并成一行进行显示,查询了一些资料,这篇文章主要给大家介绍了关于使用SQL将多行记录合并成一行的相关资料,需要的朋友可以参考下

前言

我们在数据开发的过程中,经常会遇到这样的需求,就是将多行合并为一行,并且用特定字符隔开。

1、数据处理前

数据处理前

2,结果数据展示

数据处理后

3,hive处理方式

在hive里面,用concat_ws函数处理

格式: concat_ws(‘分隔符’,collect_set/collect_list(字段))

参数释义:

  • concat_ws:多行合并一行函数
  • collect_set:合成数组,数据已去重
  • collect_list:合成数组, 数据未去重
SQL脚本:
select school,concat_ws(',',collect_set(name)) from student
group by school;

4,MySQL处理方式

GROUP_CONCAT(字段 分隔符)

注意:MySQL在GROUP_CONCAT函数中,去重需要使用distinct 关键字,如果需要先排序再合并,也可以使用order by 关键字。

select school,GROUP_CONCAT(name,',') from student
group by school;

补充:还有几种扩展

①可以给类别去重

SELECT group_id,GROUP_CONCAT(DISTINCT category) FROM `sqltest` GROUP BY group_id

②给类别排序

SELECT group_id,GROUP_CONCAT(category ORDER BY category DESC) FROM `sqltest` GROUP BY group_id

③给类别更改分隔符

SELECT group_id,GROUP_CONCAT(category SEPARATOR '_') FROM `sqltest` GROUP BY group_id

总结

到此这篇关于使用SQL将多行记录合并成一行的文章就介绍到这了,更多相关SQL多行记录合并一行内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • MySQL修改默认引擎和字符集详情

    MySQL修改默认引擎和字符集详情

    这篇文章小编主要介绍的是MySQL修改默认引擎和字符集的相关资料,需要的小伙伴请参考下面文章的具体内容,希望能否帮助到您
    2021-09-09
  • MySQL的DATE_FORMAT函数的使用

    MySQL的DATE_FORMAT函数的使用

    这篇文章主要介绍了MySQL的DATE_FORMAT函数的使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-02-02
  • mysql数据库mysql: [ERROR] unknown option ''--skip-grant-tables''

    mysql数据库mysql: [ERROR] unknown option ''--skip-grant-tables'

    这篇文章主要介绍了mysql数据库mysql: [ERROR] unknown option '--skip-grant-tables',需要的朋友可以参考下
    2020-03-03
  • Mysql数据库之索引优化

    Mysql数据库之索引优化

    MySQL凭借着出色的性能、低廉的成本、丰富的资源,已经成为绝大多数互联网公司的首选关系型数据库。本文给大家介绍mysql数据库之索引优化,感兴趣的朋友一起学习吧
    2016-03-03
  • MySQL DELETE语法使用详细解析

    MySQL DELETE语法使用详细解析

    此文章主要讲述的是MySQL DELETE语法的详细解析,以及一些在实际操作中值得我们大家注意的相关事项的描述,以下就是正文的主要内容
    2013-03-03
  • centos 7安装mysql5.5的方法

    centos 7安装mysql5.5的方法

    这篇文章主要介绍了centos 7安装mysql5.5的方法,需要的朋友可以参考下
    2015-09-09
  • 基于MySQL数据库的数据约束实例及五种完整性约束介绍

    基于MySQL数据库的数据约束实例及五种完整性约束介绍

    今天小编就为大家分享一篇关于基于MySQL数据库的数据约束实例及五种完整性约束介绍,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2019-01-01
  • 关于Mysql提高SQL性能的技巧(必看)

    关于Mysql提高SQL性能的技巧(必看)

    这篇文章主要介绍了关于Mysql提高SQL性能的技巧(必看),SQL查询的性能直接影响系统的响应时间,优化SQL可以减少查询的执行时间,提高系统的响应速度,提升用户体验,本文就来详细讲解一下如何优化SQL性能
    2023-07-07
  • 详解一条sql语句在mysql中是如何执行的

    详解一条sql语句在mysql中是如何执行的

    这篇文章主要介绍了一条sql语句在mysql中是如何执行的,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-03-03
  • 深入理解mysql之left join 使用详解

    深入理解mysql之left join 使用详解

    即使你认为自己已对 MySQL 的 LEFT JOIN 理解深刻,但我敢打赌,这篇文章肯定能让你学会点东西
    2012-09-09

最新评论