2017-09-26 5 views
0

배열 및 기타 속성을 포함하는 json 객체가 있습니다.PostgreSQL 9.5에서 객체 json 내의 배열 값 확인

테이블의 각 행에 대해 배열의 첫 번째 값을 확인해야합니다. 여기

{"objectID2":342,"objectID1":46,"objectType":["Demand","Entity"]} 

그래서 I는 개체 유형의 모든 라인을 얻기 위해, 예를 들어 필요한 JSON 예 [0] = "주문형"및 objectId1 = 46

이것을 테이블 colums

id | relationName | content 

콘텐츠 열에 json이 들어 있습니다.

답변

1

그냥 쿼리 하시겠습니까? like :

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)