Django中如何通过prefetch_related优化QuerySet关联查询?
- 内容介绍
- 文章标签
- 相关推荐
本文共计2147个文字,预计阅读时间需要9分钟。
目录+前言+实例背景+prefetch_related()的作用和方法+使用方法+*lookups+参数+Prefetch+对象+None+总结+前言+在数据库有外键的时候,使用select_related()和prefetch_related()可以很好地减少数据库请求次数+
目录
- 前言
- 实例背景
- prefetch_related()
- 作用和方法
- 使用方法
- *lookups 参数
- Prefetch 对象
- None
- 总结
前言
在数据库有外键的时候,使用 select_related() 和 prefetch_related() 可以很好的减少数据库请求的次数,从而提高性能。本文通过一个简单的例子详解这两个函数的作用。虽然QuerySet的文档中已经详细说明了,但本文试图从QuerySet触发的SQL语句来分析工作方式,从而进一步了解Django具体的运作方式。
实例背景
假定一个个人信息系统,需要记录系统中各个人的故乡、居住地、以及到过的城市。
本文共计2147个文字,预计阅读时间需要9分钟。
目录+前言+实例背景+prefetch_related()的作用和方法+使用方法+*lookups+参数+Prefetch+对象+None+总结+前言+在数据库有外键的时候,使用select_related()和prefetch_related()可以很好地减少数据库请求次数+
目录
- 前言
- 实例背景
- prefetch_related()
- 作用和方法
- 使用方法
- *lookups 参数
- Prefetch 对象
- None
- 总结
前言
在数据库有外键的时候,使用 select_related() 和 prefetch_related() 可以很好的减少数据库请求的次数,从而提高性能。本文通过一个简单的例子详解这两个函数的作用。虽然QuerySet的文档中已经详细说明了,但本文试图从QuerySet触发的SQL语句来分析工作方式,从而进一步了解Django具体的运作方式。
实例背景
假定一个个人信息系统,需要记录系统中各个人的故乡、居住地、以及到过的城市。

