First-class array 컬럼
PostgreSQL 이 native array 타입 — TEXT[], INTEGER[], 굳이라면 JSONB[] 까지. Array 가 짧고 거의 안 수정되는 리스트 (순서 중요 + 멤버십 쿼리) 에 좋음.
Array 연산자
=정확한 array 동등.@>포함:tags @> ARRAY['red','wool'].<@포함됨:ARRAY['red'] <@ tags.&&공통 요소 있음:tags && ARRAY['red','blue'].unnest()가 array 를 join/aggregate 위한 행으로.
Array vs junction 테이블
Array 가 리스트 작고 개념적으로 행의 일부 일 때 join 테이블 절약. 아이템이 자체 속성 가지면 어색해짐 (junction 원함) 또는 리스트 커지면 (insert 마다 array 재작성 = O(n)).