Есть ли возможность в postgresql запросить ключ: значение на втором уровне
например, поле строки jsonb выглядит так:
{
"something": {
"v_id": "5544d28431f19",
"value": "xyz"
},
"something_else": {
"v_id": "5544d28431feb",
"value": "abc"
}
}
Я хочу запросить эту строку, используя значение v_id, например:
SELECT id, jsonb_field
FROM table_1
WHERE jsonb_field @> '{{"v_id": "5544d28431feb"}}'
;
Однако этот запрос недействителен. Как добиться такого запроса?
Изменить:
Согласно комментарию @ CraigRinger:
Дело здесь в том, что я не знаю ключа верхнего уровня, я хочу сказать: «для любого объекта существует внутренний объект, имеющий следующий ключ со следующим значением».
v_id
в качестве индекса jsonb. Вы бы порекомендовали мне это сделать, и почему здесь это невозможно? - person Robin   schedule 04.05.2015