查詢複雜JSONB場我有一個表item
用一種稱爲JSONB的data
領域。我想查詢所有文字等於'超級'的項目。我試圖做到這一點目前這樣做:如何在Django 1.9
Item.objects.filter(Q(data__areas__texts__text='Super'))
的Django調試工具欄是報告用於此查詢是:
WHERE "item"."data" #> ARRAY['areas', 'texts', 'text'] = '"Super"'
但我沒有得到任何回匹配結果。我怎樣才能使用Django查詢?如果在Django中不可行,那我該如何在Postgresql中查詢?
這裏的data
字段的內容的例子:
{
"areas": [
{
"texts": [
{
"text": "Super"
}
]
},
{
"texts": [
{
"text": "Duper"
}
]
}
]
}
'Item.objects.filter(data__areas__0__texts__0__text = '超級')'的工作,但不是我要找因爲我希望它能夠搜索數組中的每個元素。原始查詢是我正在尋找的,儘管如此謝謝。不幸的是,我不能使用Django做到這一點,但如果汽車能夠駕駛自己,那麼我認爲這是希望;) – Chad