JSON字段postgres喜欢
Posted
技术标签:
【中文标题】JSON字段postgres喜欢【英文标题】:JSON field postgress like 【发布时间】:2017-11-26 23:29:38 【问题描述】:是否可以使用 not equal but like 运算符过滤 json 字段中的数据?型号:
from django.contrib.postgres.fields import JSONField
from django.db import models
class Dog(models.Model):
name = models.CharField(max_length=200)
data = JSONField()
数据所在行:
"breed": "labrador0", "owner": "name": "Bob0", "other_pets": ["name": "Fishy"]
然后我使用Dog.objects.filter(data__breed='labrador0')
接收数据,但如果我想接收 data.breed 像 'labrador%' 这样的所有行 - 我不知道该怎么做。
我尝试Dog.objects.filter(data__breed__contains='labrador')
- 没有结果。
在 psql 中我可以使用 select * FROM polls_dog WHERE polls_dog.data ->> 'breed' like 'labrador4%';
是通过 orm 实现它的方法吗?
【问题讨论】:
请检查您的标题的拼写:wiki.postgresql.org/wiki/Identity_Guidelines 【参考方案1】:试试这个:-
Dog.objects.filter(data__breed__startswith='labrador')
This可能对你有帮助。
【讨论】:
以上是关于JSON字段postgres喜欢的主要内容,如果未能解决你的问题,请参考以下文章
Postgres 9.5 - 查询嵌套 JSON 元素的数组长度