首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

使用_contains过滤包含大于、小于和范围的JSON字段django

使用_contains过滤包含大于、小于和范围的JSON字段是指在Django中使用_contains操作符来过滤包含特定条件的JSON字段。

JSON字段是指在数据库中存储JSON格式数据的字段。在Django中,可以使用_contains操作符来过滤包含特定条件的JSON字段。_contains操作符可以用于过滤包含指定值的JSON字段,也可以用于过滤包含大于、小于和范围的JSON字段。

下面是使用_contains过滤包含大于、小于和范围的JSON字段的示例:

  1. 过滤包含指定值的JSON字段:
代码语言:txt
复制
from django.contrib.postgres.fields import JSONField
from django.db import models

class MyModel(models.Model):
    data = JSONField()

# 查询data字段包含特定值的记录
MyModel.objects.filter(data__contains={"key": "value"})
  1. 过滤包含大于、小于和范围的JSON字段:
代码语言:txt
复制
from django.contrib.postgres.fields import JSONField
from django.db import models

class MyModel(models.Model):
    data = JSONField()

# 查询data字段中某个子字段的值大于10的记录
MyModel.objects.filter(data__subfield__gt=10)

# 查询data字段中某个子字段的值小于等于20的记录
MyModel.objects.filter(data__subfield__lte=20)

# 查询data字段中某个子字段的值在10到20之间的记录
MyModel.objects.filter(data__subfield__range=(10, 20))

在上述示例中,data__contains用于过滤包含特定值的JSON字段,data__subfield__gt用于过滤包含大于指定值的JSON字段,data__subfield__lte用于过滤包含小于等于指定值的JSON字段,data__subfield__range用于过滤包含在指定范围内的JSON字段。

推荐的腾讯云相关产品和产品介绍链接地址:

  • 腾讯云数据库 TencentDB:https://cloud.tencent.com/product/tencentdb
  • 腾讯云云服务器 CVM:https://cloud.tencent.com/product/cvm
  • 腾讯云云原生应用引擎 TKE:https://cloud.tencent.com/product/tke
  • 腾讯云人工智能 AI:https://cloud.tencent.com/product/ai
  • 腾讯云物联网 IoT Hub:https://cloud.tencent.com/product/iothub
  • 腾讯云移动开发 MSDK:https://cloud.tencent.com/product/msdk
  • 腾讯云对象存储 COS:https://cloud.tencent.com/product/cos
  • 腾讯云区块链 TBaaS:https://cloud.tencent.com/product/tbaas
  • 腾讯云元宇宙 QCloud Universe:https://cloud.tencent.com/product/qcloud-universe

请注意,以上链接仅供参考,具体产品选择应根据实际需求进行评估和决策。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

django model 条件过滤 queryset.filter(**condtions)用法详解

__gt 大于 __gte 大于等于 __lt 小于 __lte 小于等于 __in 存在于一个list范围内 __startswith 以…开头 __istartswith 以…开头 忽略大小写...__endswith 以…结尾 __iendswith 以…结尾,忽略大小写 __range 在…范围内 __year 日期字段年份 __month 日期字段月份 __day 日期字段日...djangoobjects.filter()方法匹配多个关键字 介绍: 今天在使用django时候忽然想用到,如何匹配多个关键字操作,我们知道django有一个objects.filter()方法...table.objects.filter(title__contains=key) 问题: 但是我需求是我不仅仅只需要匹配出一个关键字文章而是多个关键字文章,那么我们该如何使用djangoobjects.filter...__startswith=’key2′)) 首先导入djangoQ方法然后在filter中添加对应匹配即可 以上这篇django model 条件过滤 queryset.filter(**condtions

4.3K10

【经验分享】Django开发中常用到数据库操作总结

但是要执行更复杂查询(比如,实现筛选条件 or 关系),可以使用 Q 对象。Q对象包括 AND 关系 OR 关系Q 对象可以用& | 运算符进行连接。...数据对于很多web开发接口时候,要返回json数据,而django从DB查询出来是对象集,可以考虑django-rest-framework 库serializers类,具体可参考:Tutorial..._icontains包含忽略大小写ilike‘%aaa%’,但是对于sqlite来说,contains作用效果等同于icontains。...__gt大于__gte大于等于__lt小于__lte小于等于__in 存在于一个list范围内__startswith以…开头__istartswith以…开头忽略大小写__endswith以…结尾__...iendswith以…结尾,忽略大小写__range 在…范围内__year 日期字段年份__month 日期字段月份__day 日期字段日__isnull=True/False使用sql语句进行查询

64220

Python Django2 model 查询介绍(条件、范围、模糊查询)

使用get(),如果查询结果为空,将会引起DoesNotExist exception,而filter()将会返回[] 范围查询 Limiting Entry.objects.all()[:5] 将会返回前...+ 两条下划线 + 内置查询字段 lt(lte): 小于(小于等于) Entry.objects.filter(pub_date__lte=’2006-01-01′) 等同于 SELECT *...模糊查询 range 常用来筛选出属于某个连续区间对象 Entry.objects.filter(id__range=[1,3]) contains 包含‘xxx’(大小写敏感),常用于找出包含某些关键字对象...注意contains是大小写敏感,icontains是大小写不敏感。...IS NULL; 补充知识:Django filter **conditions多条件多字段过滤筛选数据 Application context 应用场景: 新增一条数据不能与DB库里有的数据重复或者需要多条件

1.2K21

Django 模型查询2.3

简介 查询集表示从数据库中获取对象集合 查询集可以含有零个、一个或多个过滤过滤器基于所给参数限制查询结果 从Sql角度,查询集select语句等价,过滤器像wherelimit子句 接下来主要讨论如下知识点...查询集 字段查询:比较运算符,F对象,Q对象 查询集 在管理器上调用过滤器方法会返回查询集 查询集经过过滤器筛选后返回新查询集,因此可以写成链式过滤 惰性执行:创建查询集不会带来任何数据库访问...与,匹配数据中%与,在过滤器中直接写,例如:filter(title__contains="%")=>where title like '%\%%',表示查找标题中包含% 比较运算符 exact:表示判等...filter(pk__in=[1, 2, 3, 4, 5]) gt、gte、lt、lte:大于大于等于、小于小于等于 filter(id__gt=3) year、month、day、week_day...)) 可以使用&|~结合括号进行分组,构造做生意复杂Q对象 过滤器函数可以传递一个或多个Q对象作为位置参数,如果有多个Q对象,这些参数逻辑为and 过滤器函数可以混合使用Q对象关键字参数,所有参数都将

2.3K20

django 前端页面如何实现显示前N条数据

补充知识:django 数据库查询—如何获取指定范围数据 检索对象 __exact 精确等于 like ‘aaa’ __iexact 精确等于 忽略大小写 ilike ‘aaa’ __contains...包含 like ‘%aaa%’ __icontains 包含 忽略大小写 ilike ‘%aaa%’,但是对于sqlite来说,contains作用效果等同于icontains。...__gt 大于 __gte 大于等于 __lt 小于 __lte 小于等于 __in 存在于一个list范围内 __startswith 以…开头 __istartswith 以...…开头 忽略大小写 __endswith 以…结尾 __iendswith 以…结尾,忽略大小写 __range 在…范围内 __year 日期字段年份 __month 日期字段月份...Blog.objects.filter(entry__headline__contains=’Lennon’) 查找blog表中外键关系entry表中headline字段包含Lennonblog

1.6K31

Django设置Postgresql操作

补充知识:Django orm 常用查询筛选总结 本文主要列举一下django orm中常用查询筛选方法: 大于大于等于 小于小于等于 in like is null / is not null...=10) // 查询年龄大于等于10岁用户 小于小于等于 __lt 小于 __lte 小于等于 User.objects.filter(age__lt=10) // 查询年龄小于10岁用户...‘%aaa%’ __icontains 包含 忽略大小写 ilike ‘%aaa%’,但是对于sqlite来说,contains作用效果等同于icontains。...以…开头 __istartswith 以…开头 忽略大小写 __endswith 以…结尾 __iendswith 以…结尾,忽略大小写 __range 在…范围内 __year 日期字段年份...__month 日期字段月份 __day 日期字段日 以上这篇Django设置Postgresql操作就是小编分享给大家全部内容了,希望能给大家一个参考。

1.1K20

Django篇(二)

不指定时,Django会自动生成字段为id自增长字段。...注意:我们在添加属性时候如果影响了表结构,就需要迁移,defaultblank不影响表结构。 更多模型字段,请参考Django官方文档。写明明白白。...in 查询id等于12的人 student.objects.filter(id__in=[1,2]) 5、比较查询 gt(大于) lt(小于) gte(大于等于) lte(小于等于) 5.1查询id...id=1) # 直接通过关联字段来查询 s.关联字段,比如s.c_id 以上很麻烦,我们直接通过模型类来查询 实例: 查询班级表中学生名字包含班级 classinfo.objects.filter...1、过滤查询集,比如你查询全部数据,我只让你返回前十条。 2、添加新方法,比如添加,修改可以封装在里面方面我们使用

1.4K20

Django models filter筛选条件详解

querySet.distinct() 去重复 __exact 精确等于 like ‘aaa’ __iexact 精确等于 忽略大小写 ilike ‘aaa’ __contains 包含 like...‘%aaa%’ __icontains 包含 忽略大小写 ilike ‘%aaa%’,但是对于sqlite来说,contains作用效果等同于icontains。...__gt 大于 __gte 大于等于 __lt 小于 __lte 小于等于 __in 存在于一个list范围内 __startswith 以…开头 __istartswith 以…开头 忽略大小写...__endswith 以…结尾 __iendswith 以…结尾,忽略大小写 __range 在…范围内 __year 日期字段年份 __month 日期字段月份 __day 日期字段日...使用values会生成ValuesQuerySet(形如N个dict组成list),猜测大数据无额外性能影响,毕竟queryset系列都是使用时才查询操作

3.6K21

Django中数据库相关操作

过滤条件表达语法如下: 属性名称__比较运算符=值 # 属性名称比较运算符间使用两个下划线,所以属性名不能包括多个下划线 1)相等 exact:表示判等。 例:查询编号为1图书。...例:查询书名不为空图书。 BookInfo.objects.filter(btitle__isnull=False) 4) 范围查询 in:是否包含范围内。...答:使用F对象,被定义在django.db.models中。 语法如下: F(属性名) 例:查询阅读量大于等于评论量图书。...例:查询阅读量大于20,并且编号小于3图书。...例:查询阅读量大于20,或编号小于3图书,只能使用Q对象实现 BookInfo.objects.filter(Q(bread__gt=20) | Q(pk__lt=3)) Q对象前可以使用~操作符,表示非

2.2K50

【愚公系列】2022年01月 Python教学课程 42-Django框架之ORM中查询详解

过滤条件表达语法如下: 属性名称__比较运算符=值 # 属性名称比较运算符间使用两个下划线,所以属性名不能包括多个下划线 查询编号为1图书 查询书名包含'湖'图书 查询书名以'部'结尾图书...例:查询书名为空图书。 >>> BookInfo.objects.filter(name__isnull=True) 4) 范围查询 in:是否包含范围内。...) 例:查询编号大于3图书 BookInfo.objects.filter(id__gt=3) 不等于运算符,使用exclude()过滤器。...答:使用F对象,被定义在django.db.models中。 语法如下: F(属性名) 例:查询阅读量大于等于评论量图书。...例:查询阅读量大于20,并且编号小于3图书。

1.9K40

django模型

什么是模型 模型是你数据唯一、权威信息源。它包含你所储存数据必要字段行为。...过滤器基于所给参数限制查询结果。 从SQL 角度,查询集SELECT 语句等 价,过滤器是像WHERE LIMIT 一样限制子句。 你可以从模型管理器那里取得查询集。...可以使用管理器all() 方法: all()方法返回包含数据库中所有对象一个查询集 all_users = User.objects.all() 使用过滤器获取特定对象 all() 方法返回了一个包含数据库表中所有记录查询集...大于 gte 大于或等于 lt 小于 lte 小于或等于 range 在指定范围内 year /month / day/ week_day 对于日期日期时间字段,匹配年/月/日/星期 字段查询——exact...如果没有指定字段,每个字典将包含数据库表中所 有字段值。

3.1K20

Django模型model

: 根据对象类型生成数据库表结构 将对象、列表操作,转换为sql语句 将sql查询到结果转换为对象、列表 Django模型包含存储数据字段和约束,对应着数据库中唯一表 ORM.png 2....模型类查询 查询集表示从数据库中获取对象集合 查询集可以含有零个、一个或多个过滤过滤器基于所给参数限制查询结果 从Sql角度,查询集select语句等价,过滤器像wherelimit子句...null filter(btitle__isnull=False) 在前面加个i表示不区分大小写,如iexact、icontains、istarswith、iendswith in:是否包含范围内...filter(pk__in=[1, 2, 3, 4, 5]) gt、gte、lt、lte:大于大于等于、小于小于等于 filter(id__gt=3) year、month...and 过滤器函数可以混合使用Q对象关键字参数,所有参数都将and在一起,Q对象必须位于关键字参数前面 12.

12010

django model 条件过滤

,相当于count(). annotate 对于 queryset 中每个值在指定属性上进行汇总,相当于group_by >>> from django.db.models import Count...().distinct() 如果需要按某个字段去掉重复,只有数据库是 PostgreSQL 才支持,其他数据库不支持按字段去重 models.SpecialGamesBet.objects.all()...包含 like '%aaa%' __icontains 包含 忽略大小写 ilike '%aaa%',但是对于sqlite来说,contains作用效果等同于icontains。...__gt 大于 __gte 大于等于 __lt 小于 __lte 小于等于 __in 存在于一个list范围内 __startswith 以...开头 __istartswith 以...开头 忽略大小写...__endswith 以...结尾 __iendswith 以...结尾,忽略大小写 __range 在...范围内 __year 日期字段年份 __month 日期字段月份 __day 日期字段

66420

Django笔记(十一)实现对数据库各种操作,比如分组,排序等

目录 获取查询出来个数 大于小于 in 在列表里面 contains 包含某一个东西 range 范围 排序 分组 annotate 聚合函数 分组配合聚合函数 aggregate 聚合函数 不等于...排序 tables 查询哪个表 Django里面执行原生SQL reverse 倒叙 all() value() 获取到结果是不同类型 only() 仅仅取出这个里面写字段 defer() 取出除了这个里面的其他字段...# 获取id小于10值 # models.Tb1.objects.filter(id__lt=10, id__gt=1) # 获取id大于1 且 小于10值 in 在列表里面...# models.Tb1.objects.exclude(id__in=[11, 22, 33]) # not in contains 包含某一个东西 # contains...student group by age 那么Django如果实现以上功能,不仅仅以一个字段进行分组,而且还给查询出字段起别名 以上生成sql语句是 SELECT `myfirst_article

83610
领券