• 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 '分隔符'])

  • 相关阅读:
    20201022-1 每周例行报告
    2020高级软件工程“领跑衫”获奖感言
    20201015-3 每周例行报告
    20201008-1 每周例行报告
    竞拍作业
    20201207-总结-作业
    20201126-1每周例行报告
    20201120-1每周例行报告
    20201112 -1每周例行报告
    20201105-1例行报告
  • 原文地址:https://www.cnblogs.com/yanfeiLiu/p/10082179.html
Copyright © 2020-2023  润新知