MySQL-mysql 求查询结果组装成json字符串的sql
例如下面我有个user表:
+-----------+---------------+------------------+
| user_id | user_name | email |
+-----------+---------------+------------------+
| 255093035 | chtest196 | coco_phl@163.com |
| 255093022 | maitiandeleo1 | w@aaa.com |
| 255093000 | fnoline02 | 231@321.net |
| 255092986 | fntest40 | fruitxiao@qq.com |
| 255092967 | kltest185 | |
+-----------+---------------+------------------+
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
直接写一个存储过程就可以了吧,那样不也是一个sql查询么?
你这种想法不好,缺点如下:
1.这样的sql查询会很低效;
2.json的拼接没有相应的库使用,自己拼接费力,出错概率还大;
建议:
把数据用sql语句查出来,在代码层用相应的json库拼接。
我用sql做的拼接,sql如下:
SELECT
CONCAT("[",
GROUP_CONCAT(
CONCAT("{user_id:'",user_id,"'"),
CONCAT("{user_name:'",user_name,"'"),
CONCAT(",email:'",email),"'}")
,"]")
AS json FROM user;