Database/NoSQL

[MongoDB] 정렬과 페이징

lumination 2025. 6. 16. 17:54
db.users.find().sort({age : 1, name : -1}).skip(10).limit(10)


db.users.aggregate([
    {$sort : {age : -1},
    {$skip : 20},
    {$limit : 10}
])



{
  "_id": ObjectId("..."),
  "name": "Alice",
  "age": 29,
  "email": "alice@example.com",  
  "address": {
    "city": "Seoul",
    "zip": "04524"
  },
  "hobbies": ["reading", "music", "swimming”],},
// 추가적인 필드가 더 있다고 가저
}


// project 1은 포함할 필드만 선언
db.users.aggregate([
    {$project : {name : 1, email : 1}}
])

{"_id" : ObjectId("...."), "name" : "Alice", "email" : "google.com"}


// project 0은 제외할 필드 선언
db.users.aggreagte([
   {$project : {name : 0, email : 0}}
])


db.users.aggregate([
    {$project: {name : 1, "address.city" : 1, _id : 0}}
])

{"name" : "Alice", "address" : {"city" :"Seoul"}}