MongoDB find()
2026년 8월 28일
MongoDB find()
여러 문서를 조회한다. 결과가 아니라 커서를 돌려준다.
JavaScript
| 인자 | 뜻 | 생략 시 |
|---|---|---|
filter | 조건 JSON (MongoDB 쿼리 연산자) | {} = 전체 |
projection | 받을 필드 (projection) | 전 필드 |
셸
JavaScript
파이썬 (motor)
Python
반환
- 셸: 커서. 자동으로 처음 20건을 출력하고
it로 더 본다. - 파이썬:
AsyncIOMotorCursor.async for또는to_list(length=N)으로 소비.
자주 틀리는 것
await db.blocks.find(...)— 커서에 await를 걸면 안 된다. 소비 시점에 건다.to_list(length=None)은 전부 메모리에 올린다. 항상 상한을 준다.- 커서는 기본 10분 뒤 서버에서 만료된다. 오래 붙잡고 다른 일을 하면
CursorNotFound가 난다. - 결과가 없으면 빈 커서다. 예외가 아니다.
체인 메서드
.sort() · .limit() · .skip() · .projection() — MongoDB sort() limit() skip()
한 줄 정리
find(filter, projection)은 커서를 만들 뿐이고, 소비할 때 batch 단위로 흐른다.
관련
- MongoDB findOne()
- MongoDB sort() limit() skip()
- MongoDB 커서와 페이지네이션
- MongoDB 쿼리 연산자
- projection
- MongoDB CRUD 메서드