zoukankan      html  css  js  c++  java
  • 双下划线多表查询

    1基于双下划线的跨表查询
    套路一样,用__跨表
    -一对多
    -多对多
    2 聚合查询
    -聚合函数
    from django.db.models import Avg,Count,Max,Min,Sum
    # 计算所有图书的平均价格
    # ret=Book.objects.all().aggregate(Avg('price'))
    # print(ret)


    3分组查询
    终极总结:
    values在前,表示group by,在后,表示取值
    filter在前,表示过滤(where),在后,表示having(对分组之后的结果再进行过滤)
    4 F查询与Q查询

    -F为了字段=后面的值,不能放字段,所以用F函数包裹一下就可以了
    -Q为了构造与&,或|,非~的关系

    5 常用字段:必须记住,非常用字段,了解即可
    6 orm字段参数:
    -null 可以为空
    -unique 唯一性约束
    -default 默认值
    -db_index 为该字段建索引
    -只给日期类型和时间类型用
    -auto_now_add 新增数据时,默认把当前时间存入
    -auto_now 修改的时候,默认把当前时间存入
    7 关系字段
    ForeignKey
    -to 关联哪个表
    -to_field 关联的字段
    -related_name 反向操作时,使用的字段名,用于代替原反向查询时的'表名_set'。(一般不要用)
    -related_query_name :基于双下划线的反向查询之前按表名小写(一般不要用)
    -on_delete:models.CASCADE,models.SET_NULL
    -db_constraint:db_constraint=False代表,不做外键关联

  • 相关阅读:
    Mac + Python3 安装scrapy
    Pyqt4+Eric6+python2.7.13(windows)
    js基础⑥
    python模块之os,sys
    Python模块之random
    Python模块之PIL
    js基础⑤
    js基础④
    js基础③
    centOS目录结构详细版
  • 原文地址:https://www.cnblogs.com/fushaunglin/p/9961291.html
Copyright © 2011-2022 走看看