검색결과 리스트
글
문서에 아래와 같이 배열을 추가할 수 있으며, 배열에서 조작을 위해 아래의 제한자들을 사용할 수 있다.
> db.person.update({ name : "neo"}, { $set : { favor_no : [1,2] } })
> db.person.update({ name : "joe"}, { $set : { favor_no : [3] } })
$all
배열내에하나이상의요소가일치하는배열을찾을때사용한다.
> db.person.find({ favor_no : { $all : [1,2,3] } })
$size
주어진크기인배열을반환
> db.person.find({ favor_no : { $size : 2 } })
$slice
문서내의배열의값을지정된수만큼만조회할때사용
> db.person.find({}, { favor_no : { $slice : 1 } })
1만큼제외하고나머지두개를조회
> db.person.find({}, { favor_no : { $slice : [1,2] } })
1만큼을뒤에서부터제외하고, 앞에서부터두개를조회
> db.person.find({}, { favor_no : { $slice : [-1,2] } })
$push
배열내에지정된키가존재한다면끝에, 존재하지않는다면새로운배열을생성하여특정값을추가한다.
> db.person.update( { name : "neo" }, { $push : { "contact" : { "mobile" : "010-1111-1111", "phone" : "02-111-1111" } } } )
$addToSet
$push와동일한기능을하지만, 중복된데이터는추가되지않는다.
> db.person.update( { name : "neo" }, { $addToSet : { "emaillist" : "neo@neo.com" } } )
$each
$addToSet 내에사용되며배열에여러값들을추가한다.
> db.person.update( { name : "neo" }, { $addToSet : { "emaillist" : { $each : ["neo2@neo.com", "neo3@neo.com"] } } } )
$pull
지정한조건에따른배열의요소를제거한다.
> db.person.update( { age : 20 }, { $pull : { "emaillist" : "neo@neo.com" } } )
$pop
배열의처음이나마지막요소를제거한다.
> db.person.update( { name : "neo" }, { $pop : { emaillist : 1 } } ) // 마지막
> db.person.update( { name : "neo" }, { $pop : { emaillist : -1 } } ) // 처음
'-- MongoDB' 카테고리의 다른 글
[MongoDB] 인덱스 (0) | 2013.01.05 |
---|---|
[MongoDB] $where 쿼리 (0) | 2013.01.02 |
[MongoDB] 조건연산 (0) | 2013.01.02 |
[MongoDB] $Type 연산자의 값 (0) | 2012.12.28 |
[MongoDB] MongoDB 기본쿼리 (0) | 2012.12.28 |
RECENT COMMENT