APPCHOBO
SYSTEM BOOTING...
v0.1.bit · firebase build · 富士 ed.
LV14
HP87/100
MP42/80
EXP2,840
1,240 G
앱초보의 모험
◀ 프롬프트 창고
#데이터·Firebase·보안 · claude-code

Firestore Compound Query 한계 이해

여러 조건을 AND/OR로 조합할 때의 한계와 해결책.

#firestore#query#compound-query
변수 1 — 여기 채우면 아래 프롬프트에 바로 들어가요
여러 조건을 AND/OR로 조합할 때의 한계와 해결책. 문제: "성별 = 여성 AND 종교 = 기독교 AND 도시 ∈ [서울, 부산]" ❌ 불가능: ```dart db.collection('users') .where('gender', isEqualTo: 'female') .where('religion', isEqualTo: 'christian') .where('city', whereIn: ['Seoul', 'Busan']) .get(); ``` ✓ 해결책 1 — 클라이언트 필터링 (작은 데이터): ```dart final snap = await db .collection('users') .where('gender', isEqualTo: 'female') .where('religion', isEqualTo: 'christian') .get(); return snap.docs .where((doc) => ['Seoul', 'Busan'].contains(doc['city'])) .map((doc) => User.fromDoc(doc)) .toList(); ``` ✓ 해결책 2 — 복합 필드 사용: 저장 시: `searchField = "female_christian_Seoul"` 쿼리: `.where('searchField', isEqualTo: 'female_christian_Seoul')` ✓ 해결책 3 — 여러 쿼리 후 교집합: 각 조건으로 별도 쿼리 → 클라이언트에서 교집합 {{QUERY_CONDITIONS}}에 맞춰 최적 방법 제안할까?
쓰는 법 — 위 칸에 본인 값을 채우면 아래 프롬프트에 바로 반영돼요. 복사 버튼을 누르면 채워진 그대로 클립보드에 담기니까, claude-code(또는 본인이 쓰는 AI)에 붙여넣기만 하면 됩니다. 변수가 없으면 그냥 복사해서 쓰세요.
▼ SPONSORED ▼
프롬프트 하단 광고