您好,欢迎来到爱玩科技网。
搜索
您的当前位置:首页mysql分组拼接函数

mysql分组拼接函数

来源:爱玩科技网
mysql分组拼接函数

MySQL分组拼接函数是一种常用的SQL运算函数,它可以将从一个表中获取的多行记录,拼接成一条字符串,这种字符串可以帮助数据库管理人员在实际应用中节省大量的时间。

MySQL统提供两个常用的分组拼接函数:GROUP_CONCAT CONCAT_WS。GROUP_CONCAT函数用来将多行记录拼接成一条字符串,CONCAT_WS函数用来将多行记录拼接成一条字符串,在每一个新拼接的字符串前面都添加一个分隔符。 1、GROUP_CONCAT函数

GROUP_CONCAT函数用来将多行记录拼接成一条字符串,假如有一个数据表名为students,它的结构如下: id | name | grade 1 三 90 2 四 80 3 五 85 4 六 75

接下来,我们用GROUP_CONCAT函数来将表中所有name和grade列拼接成一个字符串,然后在每一个新拼接的字符串前面都添加一个分隔符”-”:

SELECT GROUP_CONCAT(name,’-’,grade) FROM students; 运行上面的SQL,就可以得到下面的结果: 张三-90,李四-80,王五-85,赵六-75

- 1 -

2、CONCAT_WS函数

CONCAT_WS函数用来将多行记录拼接成一条字符串,在每一个新拼接的字符串前面都添加一个分隔符,它的语法如下: CONCAT_WS(separator,str1,str2,str3....strN);

其中,separator是分隔符,str1,str2,str3....strN是要拼接的字符串,接下来,我们用CONCAT_WS函数来将表students中所有name和grade列拼接成一个字符串,然后在每一个新拼接的字符串前面都添加一个分隔符”|”:

SELECT CONCAT_WS(‘|’,name,grade) FROM students; 运行上面的SQL,就可以得到下面的结果: 张三|90,李四|80,王五|85,赵六|75

通过以上两个函数的案例,我们可以看出GROUP_CONCAT拼接多行记录时不添加分隔符,而CONCAT_WS函数拼接多行记录时需要添加分隔符。

MySQL组拼接函数是一种非常有用的运算函数,可以帮助我们快速准确地拼接出多行记录,这样可以节省大量的时间,提高工作效率。在实际使用中,不同情景可以使用GROUP_CONCAT和CONCAT_WS函数,而且它们还有很多高级用法,比如order by、distinct、separator等等,这里就不作进一步介绍了,后续文章也会接着讨论这方面的问题。

- 2 -

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- aiwanbo.com 版权所有 赣ICP备2024042808号-3

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务