본문 바로가기
Database | 데이터베이스

Mongo DB 쿼리 옵션 lt , lte , gt , gte , in , nin , not

by 자유코딩 2018. 10. 11.

Mongo DB 에서 사용 할 수 있는 쿼리 옵션에 대해 알아본다.


lt 는 미만이다.


db.nettuts.find( { "age" : { "$lt" : 40 } } );


이렇게 쿼리를 보내면 age가 40 미만인 것을 가져온다.



lte 는 이하 이다.


db.nettuts.find( { "age" : { "$lte" : 40 } } );


이렇게 쿼리를 보내면 age 가 40 이하인 것을 가져온다.



gt는 초과 이다.

 

db.nettuts.find( { 'age' : { '$gt' : 47 } } );


이렇게 쿼리를 보내면 age 가 47 초과하는 것을 가져온다.



gte는 이상이다.


db.nettuts.find( { 'age' : { '$gte' : 47 } } );


이렇게 쿼리를 보내면 age 가 47 이상인 것을 가져온다.



in은 특정 key의 값이 ㅁㅁㅁ인 경우에 사용한다.


db.nettuts.find( { 'occupation' : { '$in' : [ "actor", "developer" ] } }, { "first" : 1, "last" : 1 } );


이렇게 사용한다. 이렇게 쿼리를 작성하면 occupation 이 actor이거나 developer인 것을 가져온다.


first 와 last 에 각각 1이 있으므로 오름차순으로 정렬한다.


nin 은 in과 반대로 동작한다.


occupation 이 actor도 아니고 developer도 아닌 것을 가져온다.


not 을 알아보자. not 은 부정 연산자이다.


db.nettuts.find( { 'occupation' : { '$not' : [ "actor", "developer" ] } }, { "first" : 1, "last" : 1 } );


not 뒤의 조건이 아닌 경우를 찾는다.



정규표현식


db.nettuts.find( { "first" : /(ma|to)*/i, "last" : /(se|de)/i  } );


이렇게 쿼리를 작성하면 first가 ma 또는 to 로 시작하는 것을 가져온다.


그리고 last 가 se 또는 de로 시작하는 것도 가져온다.


특정 문자를 포함하는 결과를 모두 가져오려면 이렇게 하면 된다.


db.nettuts.find( { "first" : { $regex : /(ma)/ } } );


이렇게 하면 ma가 앞뒤로 포함된 모든 결과를 가져온다.


'Database | 데이터베이스' 카테고리의 다른 글

azure cosmos db 쿼리  (0) 2019.06.05
PostgreSQL 쿼리문  (0) 2018.11.18
Maria db 설치하기  (0) 2018.11.16
Mongo DB 기초  (0) 2018.10.15

댓글