mysql 多列变成一列数据_mysql 解决一列数据vs多列数据 合并为一列数据

本文介绍了如何在MySQL中将多列数据转换为一列,通过示例展示了CONCAT()和GROUP_CONCAT()函数的使用,以及在Golang的gorm框架下如何处理查询结果。内容包括查询语句构造,结构体设计,以及数据处理和反序列化的注意事项。
摘要由CSDN通过智能技术生成

场景如下,mysql根据用户u_id查询课程,不过该用户的课程为多列数据

table users

891c64fc508cd21b7e781524e9a92825.png

table curriculums

4c6578245663b620c803babbcaca4e40.png

查询语句select * from users as u join curriculums as c on c.u_id = u.u_id where c.u_id = 1

result

8b29eaf8418da9b14696476b481acb4b.png

发现结果是多列数据,需求为一条数据返回,得到sql函数方法 CONCAT() 和 GROUP_CANCAT()

select u.u_id,u.nickename,CONCAT("[",GROUP_CONCAT('{"curr":"',c.c_name,'","price":',c.price,',"info":"',c.info,'"}'),"]") asdat

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值