我有一个包含数组和其他属性的json对象。
我需要为表格的每一行检查数组的第一个值。
这是json的一个例子
{"objectID2":342,"objectID1":46,"objectType":["Demand","Entity"]}
所以我需要例如使用ObjectType [0] ='Demand'和objectId1 = 46来获取所有行。
这是表colums
id | relationName | content
内容列包含json。
答案 0 :(得分:1)
只是查询它们?像:
t=# with table_name(id, rn, content) as (values(1,null,'{"objectID2":342,"objectID1":46,"objectType":["Demand","Entity"]}'::json))
select * From table_name
where content->'objectType'->>0 = 'Demand' and content->>'objectID1' = '46';
id | rn | content
----+----+-------------------------------------------------------------------
1 | | {"objectID2":342,"objectID1":46,"objectType":["Demand","Entity"]}
(1 row)