我有一個表如何查詢JSONB數組?
Visitor: (id, .., custom::jsonb[])
custom
是形式{field:string, value:string}
的JSON對象的數組。例如:
{"field": "apps_created", "value": "3"}
說我想找到所有的Visitors
有3個或更多apps_created
,我怎麼會去嗎?注意:每個Visitor
可以有不同的字段,並且通常不會與其他訪問者重疊。
我試着諮詢Postgres的文件或其他計算器的問題,但我有一個很難搞清楚哪些功能/運營商在這種情況下使用。
任何幫助深表感謝
你可以讓生活即,從每個字典刪除「場」和「值」,從而,而不是與兩個元素的字典你有一個字典,一個:通過存儲{「3」「apps_created」}容易。事實上,如果你這樣做,你也許可以扔的字典的東西全陣列,並有一個大的字典這將是這麼容易與PostgreSQL和在你的代碼 – e4c5
的工作的原因所在,用於存儲這樣的說法是因爲我讓用戶提交自定義數據字段/值,因此無法在設計時知道它們。 AFAIK硬編碼像 – Tarlen
我的建議你還是不需要知道這些字段是在設計時的關鍵時,這是不可能的。 – e4c5