select *
from t1
where exists (
select 1
from json_each(c1)
where value ->> 'STATUS' = '1'
)
How to work with postgresql JSON where keys are arbitrary?
-
10-10-2022 - |
Question
I have a JSON field c1 in a table t1 which is of form
{
"11111" : { "STATUS" : "1"},
"22222" : { "STATUS" : "0"},
"33333" : { "STATUS" : "0"}
}
I want find those row of t1 in which any keys status is 1, I have tried below command
with r1 as(select t1.*, json_object_keys(c1) as keys from t1) select * from r1 where r1.c1->keys->>'STATUS' = '1';
but it is not giving me any row?
Solution
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow