본문 바로가기
Engineering/DB

Postgresql : jsonb 컬럼에서 json array select 하기

by 알탱2 2021. 11. 15.
반응형

아래와 같이 정의된 tbl_table 이라는 테이블이 있는 경우,

id (integer) name (character varying (20)) lists (jsonb)
1 aaa {
  "onedepth_1" : {
     "twodepth_1" : {
        "threedepth_1" : "가",
        "threedepth_2" : "나",
        "threedepth_3" : "다"
      }
  },
  "onedepth_2" : {
   ... (생략) ...
  }
}
2 bbb {
  "onedepth_1" : {
     "twodepth_1" : {
        "threedepth_1" : "라",
        "threedepth_2" : "마",
        "threedepth_3" : "바"
      }
  },
  "onedepth_2" : {
   ... (생략) ...
  }
}

 

 

위 테이블에서 각 name별 onedepth_1 -> twodepth_1 -> threedepth_2 값을 조회하기 위해서는 아래와 같이 쿼리하면 된다.

SELECT 
  name
 , to_jsonb(lists->'onedepth_1'->'twodepth_1'->'threedepth_2') AS threedepth_2

FROM tbl_table
limit 10;

 

 

 

 

 

 

 

반응형

댓글