欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

详解mysql中的concat相关函数

程序员文章站 2022-05-24 14:56:38
一、concat()函数 功能:将多个字符串连接成一个字符串 语法:concat(str1,str2,…) 其中的字符串既可以是数据表字段,也可以是指定的字符串 返回...

一、concat()函数

功能:将多个字符串连接成一个字符串

语法:concat(str1,str2,…) 其中的字符串既可以是数据表字段,也可以是指定的字符串

返回结果为连接参数产生的字符串,如果有任何一个参数为null,则该条记录的返回值为null

二、concat_ws()函数

功能:和concat()一样,将多个字符串连接成一个字符串,但是可以一次性指定分隔符(concat_ws就是concat with separator)

语法:concat_ws(separator,str1,str2,…)

说明:第一个参数指定分隔符,需要注意的是分隔符不能为null,如果为null,则所有返回结果均为null

三、group_concat()函数

先来看这么个需求:

详解mysql中的concat相关函数

其中user_id是用户id,fee是消费金额,time是消费时间戳。

在consumption消费记录表中,需要查找出每个用户所有的消费金额明细。

很显然,单一的group by已经不足以实现这个需求了:

select max(time),fee from consumption group by user_id

group by后的字段之间的关系是错层的,我们只能单一的去筛选某个字段,而不能保证它们同属于一条记录。

这个时候就要用到group_concat()函数了:

select user_id,group_concat(time,':',fee) from consumption group by user_id

得到如下结果:

详解mysql中的concat相关函数

对结果进行数据处理,可以很容易地在页面上展示我们想要的效果。

总结

以上所述是小编给大家介绍的mysql中的concat相关函数,希望对大家有所帮助