MongoDB Compass에서 자료 검색하기

KUKJIN LEE's profile picture

KUKJIN LEE2개월 전 작성

MongoDB Compass에서 데이터를 검색할 때, 특정 패턴이 포함된 데이터를 찾는 경우가 자주 발생합니다. 이 문서에서는 정규 표현식을 사용하여 이러한 패턴을 찾는 방법에 대해 설명합니다.

 

1. 기본적인 쿼리 작성

일반적인 값 일치를 기반으로 문서를 찾기 위해서는 다음과 같은 쿼리를 사용할 수 있습니다.

{ "title": "light" }

title 필드의 값이 정확히 light인 문서를 찾습니다.

 

2. 정규 표현식을 사용한 패턴 매칭

특정 문자열을 포함하는 모든 문서를 찾고자 할 때는 정규 표현식을 사용할 수 있습니다. 예를 들어, title 필드에 light라는 문자열이 포함된 모든 문서를 찾고자 한다면 다음과 같이 쿼리를 작성합니다.

{ "title": { "$regex": "light" } }

title 필드에 light라는 문자열이 포함된 모든 문서를 반환합니다.

 

3. 대소문자 구분 없이 검색하기

정규 표현식에 대소문자 구분을 하지 않고 검색하려면, $options"i" 플래그를 추가합니다.

{ "title": { "$regex": "light", "$options": "i" } }

title 필드에 light 문자열이 대소문자 구분 없이 포함된 모든 문서를 반환합니다.

 

예를들어 아래와 같은 문서가 존재하고, `regex`를 활용한 `light`를 검색할 경우에는?

{ "_id": 1, "title": "lightbulb", "content": "This is about lightbulbs." }
{ "_id": 2, "title": "darklight", "content": "This is about dark light." }
{ "_id": 3, "title": "highlight", "content": "This is about highlights." }

아래와 같은 결과를 확인할 수 있습니다. (모두 light가 들어가 있는 걸 확인할 수 있습니다.)

[
  { "_id": 1, "title": "lightbulb", "content": "This is about lightbulbs." },
  { "_id": 2, "title": "darklight", "content": "This is about dark light." },
  { "_id": 3, "title": "highlight", "content": "This is about highlights." }
]

5. MongoDB Compass에서 쿼리 실행 방법

  1. MongoDB Compass를 실행하고, 해당 데이터베이스와 컬렉션을 엽니다.

  2. 상단 메뉴에서 "Find" 탭을 선택합니다.

  3. 쿼리 입력란에 위에서 설명한 정규 표현식 쿼리를 입력합니다.

  4. "Find" 버튼을 클릭하여 쿼리를 실행합니다.

이 방법을 통해 MongoDB Compass에서 특정 패턴이 포함된 데이터를 손쉽게 검색할 수 있습니다. 정규 표현식을 활용하면 보다 유연하고 강력한 데이터 검색이 가능합니다.

New Tech Posts