首页 > 其他分享 >F和Q查询

F和Q查询

时间:2023-11-30 18:44:47浏览次数:41  
标签:__ Book models ret egon objects 查询

F查询:取出数据库的某个字段的值

# 把read_num都加1
from django.db.models import F
ret=models.Book.objects.all().update(read_num=F('read_num')+1)
print(ret)


#查询评论数大于阅读数的书籍
ret=models.Book.objects.all().filter(commit_num__gt=F('read_num'))
for i in ret:
print(i.name)

## 查询评论数大于阅读数2倍的书籍
ret=models.Book.objects.filter(commit_num__gt=F('read_num')*2)
print(ret)

 



# Q查询:制造 与或非的条件

# Q查询:制造 与或非的条件
# 查询名字叫egon或者价格大于100的书

from django.db.models import Q
# ret=models.Book.objects.filter(Q(name='egon') | Q(price__gt=100))
# 查询名字叫egon并且价格大于100的书
# ret=models.Book.objects.filter(Q(name='egon') & Q(price__gt=100))
# ret=models.Book.objects.filter(name='egon',price__gt=100)


# 查询名字不为egon的书
# ret = models.Book.objects.filter(~Q(name='egon'))
# print(ret)

# Q可以嵌套
ret = models.Book.objects.filter((Q(name='egon') & Q(price__lt=100)) | Q(id__lt=3))
print(ret)

 

标签:__,Book,models,ret,egon,objects,查询
From: https://www.cnblogs.com/97zs/p/17868011.html

相关文章

  • 绕过cdn查询真实ip地址(概率性,不一定成功)
    背景通常网站站点加了cdn以后,一般无法解析到真实的ip地址,这时候想通过ip加端口的方式获取数据就不太可能,但是如果ngix代理禁止了ip访问,获取到真实ip也没用,会显示nginxforbidden,但是别的协议应该还是可以走,只是http的协议走不了如何查看网站是否加了cdn目标:http://alist.xiaoya......
  • 数仓实践丨常量标量子查询做全连接导致整体慢
    本文分享自华为云社区《GaussDB(DWS)性能调优:常量标量子查询做全连接导致整体慢》,作者:Zawami。问题描述由于SQL中存在标量子查询同另一查询做笛卡尔积使SQL整体慢。标量子查询,即结果集只有一行一列的子查询。这里导致的SQL语句执行慢不只是在于做笛卡尔积慢,也会使后续聚合更慢......
  • mysql慢查询日志
    一、开启并查看慢查询日志1、查看慢查询配置showvariableslike'%query%' 可以看到slow_query_log的值是OFF,也就是mysql默认是不启用慢查询日志的。这里还有个long_query_time,默认是10秒,也就是超过了10秒即为慢查询。log_queries_not_using_indexes,如果设置为ON,则会将所......
  • 基于对象的跨表查询(正向反向)
    #跨表查询有两种方式-基于对象的跨表查询:子查询  -基于双下划线的跨表查询:关联查询,连表查询    #基于对象的跨表查询-查询主键为1的书籍的出版社所在的城市    #基于对象的跨表查询(子查询)  #一对多  #查询主键为1的书籍的出......
  • 基于双下划线的跨表查询 进阶连续跨表查询
    基于双下划线的跨表查询:#连表查询#基于对象的跨表查询,先查对象,通过对象再去查另一个对象(正向:字段名,反向:表名小写/表名小写_set.all())#地址为山东的作者写的所有书#author_detail=models.AuthorDetail.objects.get(addr='山东')#author=author_detail.autho......
  • 记录一次MySQL多表查询,order by不走索引的情况.
    首先是表结构,部分字段脱敏已删除 CREATETABLE`log_device_heart`(`id`intunsignedNOTNULLAUTO_INCREMENT,`device_number`varchar(255)CHARACTERSETutf8mb4COLLATEutf8mb4_0900_ai_ciNOTNULL,`time_periods_begin`datetimeNOTNULL,`time_peri......
  • 查询sqlserver中的慢sql
    1SELECT2a.session_id,3a.client_net_address,4(total_elapsed_time/execution_count)/1000N'平均时间ms',5total_elapsed_time/1000N'总花费时间ms',6total_worker_time/1000N'所用的CPU总时间ms',7......
  • SQLSERVR 查询包含某个字符的存储/视图/表
    selectnamefromsysobjectso,syscommentsswhereo.id=s.idandtextlike'%是否生成SN%'ando.xtype='P'--查询特定的表(字段或者文字)在哪些存储过程中被使用SELECTDISTINCTOBJECT_NAME(id)--,textFROMsyscommentsWHEREidIN(SELECTidFROMsysobjectsWHEREt......
  • influxdb 连续查询使用总结
    转载请注明出处:1.定义:InfluxDB连续查询(ContinuousQuery)是一种自动化查询类型,该查询会根据定义的时间间隔定期运行,并将结果存储在新的目标测量中。这样的查询通常用于处理大量时间序列数据。2.基本语法使用语法格式:CREATECONTINUOUSQUERY<cq_name>ON<db_name>BEGIN......
  • elasticsearch在Java中查询指定列的方法
     背景ES在查询时如果数量太多,而每行记录包含的字段很多,那就会导致超出ES的查询上线,默认是100MB,但是很多场景下我们只需要返回特定的字段即可,那么如何操作呢。主要代码@AutowiredprivateRestHighLevelClientclient;publicList<Map<String,Object>>search(Stringindex){......