当前位置: 首页 > news >正文

岳阳网站岳阳建站常用网站推荐

岳阳网站岳阳建站,常用网站推荐,网站积分商城该怎么建立,推广公众号有哪些方法数据库#xff1a;mysql 5.7版本以上 问题#xff1a;一对多数据#xff0c;实现输出一条数据#xff0c;并将多条数据转换成json对象输出#xff0c;可以实现一对多个字段。 项目中关系较为复杂#xff0c;以下简化数据关系如下#xff1a; t1是数据表#xff0c;t… 数据库mysql 5.7版本以上 问题一对多数据实现输出一条数据并将多条数据转换成json对象输出可以实现一对多个字段。 项目中关系较为复杂以下简化数据关系如下 t1是数据表t2是用户表一条数据对应授权给多个用户给出每条数据对应授权所有用户和用户名信息 SELECTt1.id,CAST( GROUP_CONCAT( json_object( id, t2.user_id name, t2.name)) AS CHAR ( 10000 ) CHARACTER SET utf8 ) AS jsonStr FROMt1LEFT JOIN t2 ON t1.id t2.user_id GROUP BYt1.id 结果 05033d2aa90823bb7ea09851    {id: 01, name: 张三} 150aa723a9ae1e60d6e2c646    {id: 02, name: 王五},{id: 04, name: 李四} 254e636931f52799432933de    {id: null, name: null} ps:如果连表数据为空这里任然有json{id: null, name: null} 这种sql结果有一个弊端json字符串无法直接转换成List的json对象需要加中括号[] 方案一java代码中拼接 StringBuffer stringBuffer new StringBuffer();stringBuffer.append([);stringBuffer.append(data.get(shareJsonStr));stringBuffer.append(]);ListMapString, String shareJsonList JSONArray.parseObject(stringBuffer.toString(), List.class); 方案二concat函数实现 SELECTt1.id,CAST( CONCAT([,GROUP_CONCAT( json_object( id, t2.user_id name, t2.name)),]) AS CHAR ( 10000 ) CHARACTER SET utf8 ) AS jsonStr FROMt1LEFT JOIN t2 ON t1.id t2.user_id GROUP BYt1.id 结果 05033d2aa90823bb7ea09851    [{id: 01, name: 张三}] 150aa723a9ae1e60d6e2c646    [{id: 02, name: 王五},{id: 04, name: 李四}] 254e636931f52799432933de     [{id: null, name: null}] 但是我在项目中并未使用方案二而是使用方案一 因为在复杂情况下方案二的处理速度过慢不如在代码中使用括号拼接速度快。 我查询资料理论上数据库执行会比java中拼接快可能与具体场景、数据索引、数据库版本执行速度有关。 大数据量场景需要具体问题具体分析。 知识点 1.json_object函数将多个字段转成一个json对象这里用了两个字段。 json_object( id, t2.user_id name, t2.name) mysql需要5.7版本其他数据库大多数有次函数 2.CAST函数json输出类型转换 CAST( json AS CHAR ( 10000 ) CHARACTER SET utf8 ) 数据库json对象是二进制输出字符串需要转换成utf8的方式。 其中char10000代表字符最长字段 mysql可以使用此函数也可以是用convert函数但是convert其他数据库不一定支持相对cast通用性更高。 3.GROUP_CONCAT函数进行分组拼接多条jason对象为一个字符串输出 GROUP_CONCAT( json_object( id, t2.user_id name, t2.name))...GROUP BY t1.id 5.使用中需要加中括号[]实现json的list解析使用
http://www.hkea.cn/news/14499250/

相关文章:

  • 上海站优云网络科技有限公司完成网站的建设工作内容
  • 有个印度做网站的天天找我男生做网站编辑
  • 名城建设有限公司网站中国科技
  • 网站建设编辑教程浅谈一下网络营销的几个误区
  • 个人网站我的大学我做主页面网站与备案信息不符
  • 银行虚拟网站制作有人有片资源吗免费高清
  • 建设企业网站作用小米路由器3 做网站
  • 推广网站企业手机网站开发c 教程
  • iis7添加网站网站目录优化
  • 天津有哪些好的做网站公司网站做视频怎么赚钱的
  • 企业网站推广建议如何在阿里云上做网站备案
  • 免费织梦网站模板创网络用语是什么意思
  • 江门网站关键词推广外链代发公司
  • 北京常用网站wordpress 模板 破解版
  • 有关做粪污处理设备的企业网站网站开发的理解
  • 设计iphone手机网站淘宝网站品牌设计
  • 简历网站免费动画制作专业学校排名
  • 蓝杉网站建设公司建设网站资质查询
  • 4435建站wordpress整合ck
  • 个人网站备案网站名称重庆网站设计中心
  • 做的做的比较好的网站惠州公司网站建设价格
  • 律所网站建设数字展厅网站建设
  • 泰安市景区建设网站天猫网站建设的目的
  • 怎么换自己的网站服务器网站建设及网站推广
  • 宁波网站建设报价多少兰州网络推广优化服务
  • 苏州学做网站网站建设添加汉语
  • 网站建设福建杭州网站建设费用多少
  • 网站 购买广告设计培训目的
  • 做财税的网站有哪些青岛网站推广哪家效果好
  • 手机网站设计网站上面怎么做链接