zoukankan      html  css  js  c++  java
  • orm查询

    基于对象的查询(子查询)

    1.一对一

    ​ 正向就是建立关系的那个字段在次表中,向没有建立关系的那个字段的表查询

    ​ 反向则反之

    ​ 正向:正向查询按字段

    author=Author.objects.filter(name='lqz').first().authordetail.phone
    

    ​ 反向:反向查询按表名小写

    authordetail=AuthorDetail.objects.filter(addr='山东').first().author.name
    

    2.一对多

    ​ 正向:正向查询按字段

    book=Book.objects.filter(name='红楼梦').first().pulish.email
    

    ​ 反向:反向按表名小写加_set

    Publish.objects.filter(addr='北京').first().book_set.all()
    

    3.多对多

    ​ 正向:正向查询按字段

    #查询红楼梦这本书所有的作者
    book=Book.objects.filter(name='红楼梦').first().authors.all()
    

    ​ 反向:反向按表名小写加_set

    # 查询lqz写的所有书
    lqz=Author.objects.filter(name='lqz').first().book_set.all()
    

    多表联查(基于双下划线的查询)

    1.一对一

    ​ 正向:正向查询按字段

    ret=Author.objects.filter(name='lqz').values('authordetail__phone')
    

    ​ 反向:按表名小写

    ret=AuthorDetail.objects.filter(author__name='lqz').values('phone')
    
  • 相关阅读:
    实验二 结对编程 第二阶段
    实验二 结对编程 第一阶段
    实验一 GIT 代码版本管理
    实验五 单元测试
    实验四 代码审查
    结对编程 第二阶段
    结对编程 第一阶段
    实验一 GIT代码版本管理
    实验五 单元测试
    实验四 代码评审
  • 原文地址:https://www.cnblogs.com/jianhaozhou/p/9956187.html
Copyright © 2011-2022 走看看