У меня есть таблица в базе данных postgresql 9.4 с полем jsonb с именем json_table2.
Пример данных:
{
"articleProperties": [
{
"propertyUkey": "TEST",
}
],
}
{
"articleProperties": [
{
"propertyUkey": "TEST1",
},
{
"propertyUkey": "TEST",
}
],
}
{
"articleProperties": [
{
"propertyUkey": "TEST1",
},
{
"propertyUkey": "TEST2",
},
{
"propertyUkey": "TEST",
}
],
}
В данных выше propertyUkey имеют значение TEST, но словарь внутри articleProperties не является упорядоченным словарем. Мне нужен доступ к "propertyUkey" только для значения TEST .
Я выполнил следующий запрос: stati c, т.е. позиция stati c здесь, как я могу это сделать динамика c.
select count(*) from json_table2
where value1->'articleProperties'->1->>'propertyUkey' in ('TEST')
or value1->'articleProperties'->2->>'propertyUkey' in ('TEST')
or value1->'articleProperties'->3->>'propertyUkey' in ('TEST')