MySQL字符串拼接与分组拼接字符串实例代码

 更新时间:2023年02月02日 15:39:06   作者:哒不溜-w  
做SQL查询时会经常需要,把查询的结果拼接成一个字符串,下面这篇文章主要给大家介绍了关于MySQL字符串拼接与分组拼接字符串的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下

一、经典拼接concat(x,x,....)

用法案例:

SELECT
	concat( '字符串', '拼接', ',啥都可以', '嘿嘿' ) AS concats 
FROM DUAL

注意

如果有任何一个参数为NULL,则返回值为NULL;

二、分隔符拼接CONCAT_WS(separator,str1,str2,...)

-- CONCAT_WS(分隔符,字符串1,字符串2,...)
SELECT
	CONCAT_WS(':','现在时间',now()) AS concats 
FROM DUAL


注意

  • 如果分隔符为NULL,则结果为NULL;

三、分组拼接GROUP_CONCAT(expr)

group_concat函数

  • 实现分组查询之后的数据进行合并,并返回一个字符串结果。
  • 用于将多个字符串拼接成一个字符串。
  • MySql默认的最大拼接长度为1024个字节

格式:GROUP_CONCAT(DISTINCT 要拼接的字段 ORDER BY 排序字段 ASC/DESC SEPARATOR '分隔符')

-- GROUP_CONCAT(DISTINCT 要拼接的字段  ORDER BY 排序字段 ASC/DESC SEPARATOR '分隔符')
-- 不好写例子,直接借用的leetCode上的题
SELECT
	sell_date,
	count( DISTINCT product ) AS num_sold,
	GROUP_CONCAT( DISTINCT product ORDER BY product SEPARATOR ',' ) AS products 
FROM
	Activities 
GROUP BY
	sell_date;

通过使用DISTINCT可以排除重复值;如果希望对结果中的值进行排序,可以使用ORDER BY子句;SEPARATOR是一个字符串值,默认为逗号分隔。

补充:在筛选查询中进行字符串拼接并显示在表格里

有时,我们需要拼接的返回值放在表格中与其他信息一起显示。

比如招生老师想把候选人的「学历」「姓名」「学科」单独提出来,筛选出研究生学历的候选人,并显示他们的联系方式:

SELECT CONCAT(qualification, ' ', firstname, ' - ', subject) AS 候选人资料, wechat_id, phone FROM kalacloud_student WHERE qualification = 'MPhil';

在使用 CONCAT() 拼接信息的同时,使用 WHERE 筛选出研究生学历(MPhil)的候选人

总结

到此这篇关于MySQL字符串拼接与分组拼接字符串的文章就介绍到这了,更多相关MySQL字符串拼接内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 解决远程连接MySQL报错:2003 - Can‘t connect to MySQL server on ‘X.X.X.X‘ (10060 “Unknown error“)问题

    解决远程连接MySQL报错:2003 - Can‘t connect to&nb

    这篇文章主要给大家介绍了解决远程连接MySQL报错:2003 - Can‘t connect to MySQL server on ‘X.X.X.X‘ (10060 “Unknown error“)问题的方案,文中有详细的解决步骤,需要的朋友可以参考下
    2023-09-09
  • Mysql常见bug及解决方案超详细讲解

    Mysql常见bug及解决方案超详细讲解

    在使用MySQL的过程中,相比大家都踩过不少坑,下面这篇文章主要给大家介绍了关于Mysql常见bug及解决方案超详细讲解的相关资料,文中介绍的非常详细,需要的朋友可以参考下
    2023-06-06
  • mysql like 特殊字符搜索的实现

    mysql like 特殊字符搜索的实现

    在MySQL中,LIKE操作符用于在查询数据时进行模糊匹配,本文主要介绍了mysql like 特殊字符搜索的实现,具有一定的参考价值,感兴趣的可以了解一下
    2023-09-09
  • 关于mysql create routine 权限的一些说明

    关于mysql create routine 权限的一些说明

    下面小编就为大家带来一篇关于mysql create routine 权限的一些说明。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-03-03
  • Linux下安装mysql的方式(yum和源码编译两种方式)

    Linux下安装mysql的方式(yum和源码编译两种方式)

    这里介绍Linux下两种安装mysql的方式:yum安装和源码编译安装。需要的朋友可以参考下
    2018-02-02
  • mysql 5.7.13 winx64安装配置方法图文教程(win10)

    mysql 5.7.13 winx64安装配置方法图文教程(win10)

    这篇文章主要为大家分享了mysql 5.7.13 winx64安装配置方法图文教程,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-01-01
  • mysql 索引合并的使用

    mysql 索引合并的使用

    索引合并是mysql底层为我们提供的智能算法。本文就介绍了mysql 索引合并的使用,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-08-08
  • MySQL本地版本升级超详细教程(从5.5.20升到8.0.21)

    MySQL本地版本升级超详细教程(从5.5.20升到8.0.21)

    MySQL是一款广泛使用的关系型数据库管理系统,但是旧版本的客户端可能会受到一些限制,下面这篇文章主要给大家介绍了关于MySQL本地版本升级超详细教程,本文是从5.5.20升到8.0.21的相关资料,需要的朋友可以参考下
    2023-04-04
  • mysql insert if not exists防止插入重复记录的方法

    mysql insert if not exists防止插入重复记录的方法

    在 MySQL 中,插入(insert)一条记录很简单,但是一些特殊应用,在插入记录前,需要检查这条记录是否已经存在,只有当记录不存在时才执行插入操作,本文介绍的就是这个问题的解决方案。
    2011-04-04
  • MySQL数据查询limit子句用法举例

    MySQL数据查询limit子句用法举例

    这篇文章主要介绍了MySQL数据查询limit子句用法的相关资料,LIMIT子句在MySQL中用于限制查询结果集的行数,适用于分页显示和限制数据量,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2025-02-02

最新评论