본문 바로가기
Q&A2026년 8월 22일1분 읽기

Drizzle ORM에서 inArray에 빈 배열을 넣으면 전체 행이 다 나오는데 정상인가요?

d
drizzle_minu
조회 180댓글 3

Drizzle로 태그 필터 검색을 만들고 있습니다. 사용자가 고른 태그 ID 배열을 inArray로 거는데, 아무 태그도 선택 안 하면 배열이 빈 배열([])이 됩니다. 이때 결과가 0건이 아니라 테이블 전체가 다 나와버립니다.

const rows = await db.select().from(posts)
  .where(inArray(posts.tagId, selectedIds)) // selectedIds = []

SQL 로그를 찍어보니 where 절이 아예 안 붙거나 이상하게 나가는 것 같습니다. 상식적으로 빈 배열이면 '해당하는 게 없다'니까 0건이어야 하는 거 아닌가요? 아니면 제가 뭔가 잘못 이해하고 있는 걸까요? 하마터면 비공개 글까지 다 노출될 뻔했습니다.

댓글 0

아직 댓글이 없습니다.
Ctrl+Enter로 등록