美文网首页django
Django-17 F对象和Q对象

Django-17 F对象和Q对象

作者: JuliusL | 来源:发表于2021-07-16 21:56 被阅读0次

F对象

  • 一个F对象代表数据库中某条记录的字段的信息
  • 作用
    • 解决资源竞争问题
    • 通常是对数据库中的字段值在不获取的情况下进行操作
    • 用于类属性(字段)之间的比较
  • 语法
from django.db.models import F
F('列名')
  • 示例2
    对数据库中两个字段值进行比较,列出哪儿些书的零售价高于定价?
from django.db.models import F
from bookstore.models import Book
books = Book.objects.filter(market_price__gt=F('price'))
# SELECT * FROM bookstore_book WHERE book_store.market_price > bookstore.price

Q对象

当前获取查询结果集使用复杂的逻辑或|、逻辑非~等操作时可以借助Q对象进行操作
如:想找出定价低于20元 或 清华大学出版社的全部书,可以写成

from django.db.models import Q
Book.objects.filter(Q(price__lt=20)|Q(pub="清华大学出版社"))

Q(条件1)|Q(条件2) 条件1成立或条件2成立
Q(条件1)&Q(条件2) 条件1和条件2同时成立
Q(条件1)&~Q(条件2) 条件1成立且条件2不成立

相关文章

  • Django-17 F对象和Q对象

    F对象 一个F对象代表数据库中某条记录的字段的信息 作用解决资源竞争问题通常是对数据库中的字段值在不获取的情况下进...

  • 数据库基本操作Q和F

    Q和F F使用查询条件的值,专门取对象中某列值的操作 Q 构建搜索条件 通常,Q()对象使得定义查询条件然后重用成...

  • django查询之Q对象

    Q()对象和F()对象类似,把一个sql表达式封装在对象中,这个对象可以用于数据库相关的操作注意这里提醒一下,如果...

  • Django中mysql简单查询——二

    F和Q对象 F对象 上次的只能是python属性对应的数据库的字段与一个固定值的比较,即使是date这种复杂类型,...

  • 对象^F

    想谈一场实实在在的恋爱,然后结个婚,娶个媳妇 哈哈 想找一个可以说心里话的人, 参加了两场婚礼, 想获得幸福, 成...

  • Object-C 方法查找原理(对象、isa和SuperClas

    Q:OC中对象分类 A:总共为三类:实例对象、类对象、元类对象 instance对象(实例对象) class对象(...

  • Dom、事件

    Q&A: 1. dom对象的innerText和innerHTML有什么区别? innerHTML从对象开始到结束...

  • 通俗易懂的原型与原型链

    普通对象与函数对象 上面的例子中: o1、o2、o3都是普通对象object,而f1、f2、f3是函数对象func...

  • Django-数据库操作之F和Q对象

    一、F对象 之前的查询都是对象的属性与常量值比较,两个属性要如何比较呢?可以使用F对象,被定义在django.db...

  • 原型对象和原型链

    对象大致可以分为两类,即:普通对象 Object 和 函数对象 Function。 f1属于函数的声明,最常见的函...

网友评论

    本文标题:Django-17 F对象和Q对象

    本文链接:https://www.haomeiwen.com/subject/pwnspltx.html