저는 디비의 컬럼으로 배열을 잘 안씁니다.
하지만 쓸수밖에 없을때가 있는데 배열로 된 것은 일반 쿼리문 하고 좀 틀리게 삭제등을 해야합니다.
알면 간단하지만 모르면 정말 해매야하는 부분 입니다.
그럼 간단하게 배열로 된 컬럼내의 특정 값을 select 및 delete를 해보겠습니다.
ex) testtable 테이블의 int_array컬럼에서 3이포함되어있는 열을 select합니다.
SELECT * from testtable WHERE 3 = ANY(int_array);
ex) testtable이라는 테이블에 int_array 라는 배열컬럼내의 배열들중 3만 삭제합니다.
UPDATE testtable SET int_array =array_remove(int_array , 3 ) WHERE 3 = ANY(int_array);
'DB' 카테고리의 다른 글
우분투에서 unixODBC설정하기 (postgresql) (0) | 2014.12.19 |
---|