数据库数据规模挺大的,建立索引以加速查询。

通过db_index和Meta index选项给数据表字段建立索引

使用索引可快速访问数据库表中的特定信息。数据库索引好比是一本书前面的目录,没有索引目录的话,你访问书中某个页面需要从第1页遍历到最后一页,如果有目录,你可以快速地根据目录查找到所需要的页面。Django项目中如果你需要频繁地对数据表中的某些字段(如title)使用filter(), exclude()和order_by()方法进行查询,我们强烈建议你对这些字段建议索引(index), 提升查询效率。

要对模型中的某个字段建立数据库索引,你可以使用db_index选项,也可以使用Meta选项建立索引。使用Meta选项的好处是你可以一次性对多个字段建立索引,还可以对多个字段建立组合索引。

代码如下:

class CountryData(models.Model):date = models.DateField()country = models.ForeignKey(Country, on_delete=models.CASCADE, default="")confirm_add = models.IntegerField(default=0)confirm = models.IntegerField(default=0)heal = models.IntegerField(default=0)dead = models.IntegerField(default=0)def __str__(self):return str(self.country) + " " + self.date.strftime("%Y/%m/%d")class Meta:indexes = [models.Index(fields=['country']), ]

同时Meta中还可以定义联合索引:

index_together = ["user", "goods"]

联合约束:(即goods与user不相同)

unique_together = ["goods", "user"]

Django 建立索引相关推荐

  1. 数据库建立索引常用的规则

    数据库建立索引常用的规则如下: 查看全文 http://www.taodudu.cc/news/show-3587136.html 相关文章: hive中如何建立索引 oracle数据库分区表建立索引 ...

  2. Django建立博客搜索功能(haystack+whoosh+jieba)

    0-效果预览 1-相关说明: haystack 全文检索框架,可配置各种搜索引擎,在Django内相当于app whoosh 搜索引擎 2-whoosh下载与优化 中文分词jieba 下载: pip ...

  3. lucene.net mysql_用Lucene[1].net对数据库建立索引及搜索+

    cs代码 using System; using System.Collections; using System.ComponentModel; using System.Data; using S ...

  4. [转]数据库建立索引的一般依据

    建立索引常用的规则如下: 1.表的主键.外键必须有索引: 2.数据量超过300的表应该有索引: 3.经常与其他表进行连接的表,在连接字段上应该建立索引: 4.经常出现在Where子句中的字段,特别是大 ...

  5. 建立索引常用的规则如下

    建立索引常用的规则如下:  1.表的主键.外键必须有索引: 2.数据量超过300的表应该有索引: 3.经常与其他表进行连接的表,在连接字段上应该建立索引: 4.经常出现在Where子句中的字段,特别是 ...

  6. elasticsearch建立索引操作的API

    Elastic Search API Index.简单的介绍了使用Elastic Search 如何建立索引. ElasticSearch-API-Index 索引创建API允许初始化一个索引.Ela ...

  7. mysql 数据索引使用_mysql数据库正确建立索引及使用

    普通mysql运行,数据量和访问量不大的话,是足够快的,但是当数据量和访问量剧增的时候,那么就会明显发现MySQL很慢,甚至down掉,那么就要考虑优化我们的mysql了.其中优化mysql的一个重要 ...

  8. mysql 织梦 索引_Mysql索引详解 建立索引的优势劣势以及索引规范

    索引是什么 索引(index)是帮助MySQL高效获取数据的数据结构 如果没有特别指明,都是指的是B树索引(多路搜索树,并不一定是二叉树)结构组织的索引 建立索引的优势和劣势 优势 提高数据检索的效率 ...

  9. 建立索引要考虑的因素

    建立索引的时候一般要考虑到字段的使用频率,经常作为条件进行查询的字段比较适合. 如果需要建立联合索引的话,还需要考虑联合索引中的顺序.此外也要考虑其他方面,比如防止过多的所有对表造成太大的压力.这些都 ...

最新文章

  1. ubuntu 禁用透明大页_Linux关于透明大页的使用与禁用介绍
  2. 数据库设计中的五个范式
  3. 部署WAR包实时查看Tomcat的状态和日志
  4. java游戏开发基础Swing之JRadioButton
  5. 度盘转存工具 v1.8
  6. CAN笔记(10) 错误种类和输出
  7. nginx ngx_http_access_module
  8. 25 The Go image/draw package go图片/描绘包:图片/描绘包的基本原理
  9. CentOS 6.6下PXE+Kickstart无人值守安装操作系统
  10. html 表格转换为dbf,怎样将Excel转换成dbf格式?
  11. linux cat -A 隐藏符号显示
  12. Windows系统连接蓝牙音箱,已连接,没有声音
  13. 计算机组成北大,计算机组成原理-PKUSEI.PDF
  14. PreparedStatement的setNull
  15. 计算机耐火等级不低于,网络信息安全知识:网吧营业场所应设置在耐火等级不低于()级的建筑物内。...
  16. 【机器学习】数据归一化全方法总结:Max-Min归一化、Z-score归一化、数据类型归一化、标准差归一化等
  17. (Python)正则表达式(二)
  18. 基于python的百度云网盘资源搜索引擎设计架构
  19. 阿里云OSS服务端签名前端JS直传(php)示例
  20. (转载)[python学习笔记]Python语言程序设计(北理工 嵩天)

热门文章

  1. 小米手机相册选取后的intent为空?
  2. python 监测_理解监测指标,并使用Python去监测它们
  3. 彻彻底底删除卸载docker
  4. js获取指定class和id的值
  5. 【vivado IP核】第2篇:VIVADO IP库中的FIFO已满继续写入数据会怎样
  6. 进军时尚界!梅西推出个人服装品牌“梅西”
  7. RK3568开发笔记(五):在虚拟机上使用SDK编译制作uboot、kernel和ubuntu镜像
  8. 扫雷游戏初步实现与心得
  9. 磁盘分区、格式化、挂载(fdisk mkfs partprobe)
  10. 远程连接mysql8,报错10061 解决办法