MongoDB-연산자

1 minute read

비교 연산자

문서를 입력된 값과 비교하여 조회하기 위한 연산자

$gt기준 값 보다 크다
$gte기준 값 보다 크거나 같다
$lt기준 값 보다 작다
$lte기준 값 보다 작거나 같다
$ne같지 않다
$ninl존재하지 않는다


1
2
3
4
5
6
7
8
9
//비교 연산자 - 문서를 입력된 값과 비교하여 조회하기 위한 연산자
//$gt: 기준 값 보다 크다, $gte: 기준 값 보다 크거나 같다
db.user.find({"age":{$gt:15}})
db.user.find({"age":{$gte:15}})
//$lt: 기준 값 보다 작다, $lte: 기준값 보다 작거나 크다.
db.user.find({"age":{$lt:15}})
db.user.find({"age":{$lte:15}})
//$ne: 같지 않다
db.user.find({"age":{$ne:15}})


결과 - db.user.find({“age”:{$lt:15}})


결과 - db.user.find({“age”:{$ne:15}})


판단연산자

여러가지 조건을 연결하거나 존재 여부를 판단하는 연산자

$and여러 조건을 모두 만족
$or여러 조건 중 하나 이상 만족
$norNot OR
$not조건을 만족 시키지 않는 것


1
2
3
4
5
6
7
8
9
//판단 연산자 - 여러가지 조건을 연결하거나 존재 여부를 판단하는 연산자 이다
//$and: 여러 조건을 모두 만족
db.user.find({$and :[{"age": {$gt:10}},{"age": {$lt:15}}]})
//$or: 여러 조건 중 하나 이상 만족
db.user.find({$or :[{"age": {$gt:20}},{"age": {$lt:15}}]})
//$nor: Nor or
db.user.find({$nor :[{"age": {$gt:20}},{"age": {$lt:15}}]})
//$not: 조건을 만족 시키지 않는 것
db.user.find({age:{$not:{$lte:15}}})


결과 - db.user.find({$and :[{“age”: {$gt:10}},{“age”: {$lt:15}}]})


결과 - db.user.find({age:{$not:{$lte:15}}})


SubDocument

Mongo Db는 Collection내의 Document 단위로 검색
Document안에 Bson 형식인 Document존재시 SubDocument를 활용하여 검색 가능
$elemMatch를 사용한다.

1
2
3
4
5
6
7
8
/*
SubDocument
Mongo Db는 Collection내의 Document 단위로 검색
Document안에 Bson 형식인 Document존재시 SubDocument를 활용하여 검색 가능
$elemMatch를 사용한다.
*/
db.user.insert({"name":"Hwang", "age":18,"Detail":[{"email":"wjddyd66@naver.com","phone":"010-8947-2534"},{"email":"wjddyd66@naver.com2","phone":"010-8947-2534"}]})
db.user.find({"Detail":{$elemMatch:{"email":"wjddyd66@naver.com"}}})


결과:



참조: 원본코드
코드에 문제가 있거나 궁금한 점이 있으면 wjddyd66@naver.com으로 Mail을 남겨주세요.

Categories:

Updated:

Leave a comment