深圳网站开发服务流行网站类型
深圳网站开发服务,流行网站类型,wordpress 插件 弹窗,网站职能建设论文列表查询中一对多查询循环查询优化#xff0c;mysql循环查询优化描述比如查询学生列表#xff0c;每一行需要包含该学生的家长列表#xff0c;一个学生对应多个家长。循环查询方式先查出学生列表#xff0c;再循环查询对应的家长列表#xff0c;需要查询N1次但在循环中查询…列表查询中一对多查询循环查询优化mysql循环查询优化描述比如查询学生列表每一行需要包含该学生的家长列表一个学生对应多个家长。循环查询方式先查出学生列表再循环查询对应的家长列表需要查询N1次但在循环中查询数据不但效率低下而且对数据库造成很大对压力当循环次数多的时候一方面会造成严重的网络延迟一方面可能会连接数据库失败在开发中应该尽量避免在循环里查询数据库优化方案使用关联查询联合查询所有数据行再循环处理按学生归类查询次数1示例代码$list $this-field(s.id,s.name,u.nickname,u.avatar)-alias(s)-leftJoin(user_student us, s.id us.student_id)-leftJoin(user u, us.user_id u.id)-where([s.class_id $classId])-paginate([list_rows $size,page $page,]);if ($list-isEmpty())return [data , code 20404, msg 没有数据];$temp [];foreach ($list as $k $value) {$temp[$value[id]] [id $value[id], name $value[name]];$temp[$value[id]][parent_list][] $value;}$data $list-toArray();$data[data] array_values($temp);return [data $data, code 0, msg success];使用whereIn查询先查学生列表再查出家长列表最后循环处理数据查询次数2thinkphp可以使用模型一对多关联查询
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/88809.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!