大家好,又见面了,我是你们的朋友全栈君。
MySQL的字符串拼接有三个函数
这三个函数都各有作用,现在测试看看是什么样子的效果
CREATE TABLE `user_info` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(255) DEFAULT NULL,
`age` int(3) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8;
id | name | age |
---|---|---|
1 | Ana | 24 |
2 | Ame | 24 |
3 | Clid | 27 |
4 | Dave | 27 |
5 | Eva | 27 |
CONCAT、CONCAT_WS其实差不多,就是CONCAT_WS能自己设置分隔符,而且这两个字段是拼接同一行的数据。
使用CONCAT
select CONCAT(name,age) as result from user_info
结果
result
Ana27
Ame24
Clid24
Dave24
Eva24
使用CONCAT_WS
select CONCAT_WS(':',name,age) as result from user_info
结果
result
Ana:27
Ame:24
Clid:24
Dave:24
Eva:24
使用GROUP_CONCAT,这个能将多行聚合成一行,也比较常用的
select GROUP_CONCAT(name) as result from user_info
结果
result
Ana,Ame,Clid,Dave,Eva
还可以分组聚合
select GROUP_CONCAT(name) as result,age from user_info GROUP BY age
结果
result age
Ame,Clid,Dave,Eva 24
Ana 27
这三个函数都挺常用的,但是我只是简单演示该功能,深入可以查查其他资料。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/188924.html原文链接:https://javaforall.cn