Как я могу получить строки из PostgreSQL с определенным значением. Django
Как я могу получить строки из PostgreSQL с определенным значением? У меня есть таблица со столбцами: id | accountid | dictdata | date |. Внутри колонки dictdata содержится куча словарных данных.
в моем models.py
class charts(models.Model):
id = models.AutoField(primary_key=True)
accoundid= models.IntegerField(default=None,blank=True)
dictdata= models.JSONField(default=None,null=True, blank=True)
date = models.DateTimeField(auto_now=True)
class Meta:
db_table = "charts"
в моем файле python
data = list(charts.objects.values('dictdata ')) //all dictionary data
print(data)
Пример print(data):
[{'dictdata': {'select': 'bar', 'title': 'some title'}}]
[{'dictdata': {'select': 'line', 'title': 'some title'}}]
[{'dictdata': {'select': 'pie', 'title': 'some title'}}]
Как я могу получить строки, содержащие определенное значение 'select'? Например, я хочу получить все строки с 'bar'
[{'dictdata': {'select': 'bar', 'title': 'some title'}}]
Вы можете получить строки из PostgreSQL с определенным значением.
charts.objects.values('author').distinct()
Если данные внутри dictdata
являются dict
и не являются list
, вы можете фильтровать следующим образом:
Charts.objects.filter(dictdata__select="bar")