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 |
댓글