MongoDB 2장 - 문법
포스트
취소

MongoDB 2장 - 문법

MongoDB

  • mongoose를 사용하다 보면 $로 시작하는 쿼리문을 마주할 일이 있다.
  • 그리고 이를 사용하면 보다 간편한 코드를 구현할 수 있다.
  • 검색 결과를 나타낼 때, 입력받은 문자열을 포함하는 문자가 있는지 등에 대한 조건을 쉽게 사용이 가능하다.

그냥 몇 가지만 알아보자.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
// 1. find
// 문서를 검색할 때 사용한다.
// id가 number인 문서들을 종합적으로 찾아, 배열을 반환한다.
MongoDB.find({ id : number });

// 2. findOne
// 문서를 하나만 검색한다.
MongoDB.findOne({ id : number });

// 3. deleteMany
// 일치하는 문서 여러 개를 삭제한다.
MongoDB.deleteMany({ id : number });

// 4. deleteOne
// 일치하는 문서 한 개를 삭제한다.
MongoDB.deleteOne({ id : number });

// 5. sort
// 검색 결과를 값을 기준으로 정렬한다.
MongoDB.find().sort({ id : 1 }); // 오름차순
MongoDB.find().sort({ id : -1 }); // 내림차순

// 6. $text, $search
// 텍스트를 기준으로 문서를 찾는다.
MongoDB.find({$text: {$search: "검색어"}});

// 7. $regex, $options
// 문자가 포함된 문서를 찾는다.
// options을 통해 조건을 부여한다.
MongoDB.find({id: {$regex: "", $options: "i"}});
MongoDB.find({id: {$regex: /^어/i}});
MongoDB.find({id: /^어/i });

i : 대소문자를 구분하지 않고 찾는다.
m : 다중 행모드로, 줄바꿈과 같다.
s : 단일 줄모드
x : 확장 모드, 공백  주석 무시
  • 이번 커뮤니티를 만들어 보며 이 정도를 주로 사용했는데, 외에도 너무 많은 쿼리문이 존재하여 필요할 때마다 찾아서 사용하는 것이 좋겠다…
이 기사는 저작권자의 CC BY 4.0 라이센스를 따릅니다.