Django:单表查询之神奇的双下划线

一、单表查询中双下划线运用案例

复制代码
models.Tb1.objects.filter(id__lt=10, id__gt=1) 、
#获取id大于1 且 小于10的值

models.Tb1.objects.filter(id__in=[11, 22, 33])
#获取id等于11、22、33的数据

models.Tb1.objects.exclude(id__in=[11, 22, 33]) # not in
models.Tb1.objects.filter(name__contains=“ven”) # 获取name字段包含"ven"的
models.Tb1.objects.filter(name__icontains=“ven”) # icontains i大小写不敏感
models.Tb1.objects.filter(id__range=[1, 3])
#id范围是1到3的,等价于SQL的bettwen and

类似的还有:startswith,istartswith, endswith, iendswith

date字段还可以:
models.Class.objects.filter(first_day__year=2017)
复制代码

二、总结

(1)xx__lt : 小于
(2)xx__lte : 小于等于
(3)Xx__gt、xx__gte : 大于、大于等于。
(4)xx__in : 包含指定的内容。
(5)xx__range: 指定范围内的查找, 相当于 mysql中的 between… and…
(6)Xx__startswith、xx__endswith、xx__istartswith、xx__iendswith。
(7)xx__contains: 包含某个字符,xx__icontains: i 忽略大小写。
日期类型:xx__year、xx___month、xx__day。根据年月日进行匹配

 

posted @   未来可期_Durant  阅读(40)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)
历史上的今天:
2021-07-02 Java使用JSONPath解析JSON完整内容详解
2021-07-02 windows安装jq
2021-07-02 Allure2环境准备
点击右上角即可分享
微信分享提示