본문 바로가기
Database/NoSQL

[MongoDB] Cursor

by lumination 2025. 6. 16.

https://www.scaler.com/topics/cursor-in-mongodb/

 

SQL의 ResultSet 개념

 

 

비교 요약

개념MongoDB (cursor)SQL (ResultSet)
정의 쿼리 결과를 순차적으로 읽을 수 있는 객체 쿼리 결과를 순차적으로 읽을 수 있는 객체
동작 방식 지연 평가(lazy evaluation)로 필요한 만큼 서버에서 데이터를 가져옴 필요한 만큼 가져오거나, 전체를 메모리에 올림 (DBMS마다 다름)
반복 처리 .next(), .hasNext()로 순회 .next(), .getXXX()로 순회
예시 db.collection.find() → cursor 반환 SELECT * FROM table → ResultSet 반환
클라이언트 전송 MongoDB는 한번에 다 안 보내고, batch로 나눠서 전송 SQL도 일부 드라이버는 페이징 처리 가능
 

MongoDB 예시

js
const cursor = db.users.find({ age: { $gt: 20 } }); while (cursor.hasNext()) { printjson(cursor.next()); }
→ 이건 SQL에서 다음과 같은 흐름과 유사합니다:
sql
ResultSet rs = stmt.executeQuery("SELECT * FROM users WHERE age > 20"); while (rs.next()) { System.out.println(rs.getString("name")); }

 

'Database > NoSQL' 카테고리의 다른 글

[MongoDB] 실전 쿼리 작성  (0) 2025.06.16
[MongoDB] 데이터 파이프라인과 Lookup  (0) 2025.06.16
[MongoDB] 정렬과 페이징  (0) 2025.06.16
[MongoDB] 주요 쿼리 연산자  (0) 2025.06.16
[MongoDB] CRUD와 Upsert  (0) 2025.06.16