programing

mongodb에서 $와 $match를 사용합니다.

subpage 2023. 5. 24. 22:09
반응형

mongodb에서 $와 $match를 사용합니다.

MongoDB에서 다음 쿼리를 사용하려고 하는데 작동하지 않습니다.

  db.test.aggregate(
    $match: {
      $and: [
        type: { $in: ["TOYS"] },
        type: { $nin: ["BARBIE"] },
        time: { $lt: ISODate("2013-12-09T00:00:00Z") }
      ]
    }
  })

잘못된 문자 ":"로 표시됩니다.

$와 $match를 사용할 수 있습니까?저는 이 포럼에서 $ 또는 $match의 예를 보았기 때문에 이것이 가능하다고 생각했습니다.

당신의 도움과 지도에 미리 감사드립니다.

$ 그리고 $ 매치는 잘 됩니다.

쿼리에 구문 오류가 있습니다.이거 먹어봐요.

db.test.aggregate([
                   { 
                     $match: {
                          $and: [ 
                              {type: {$in: ["TOYS"]}}, 
                              {type: {$nin: ["BARBIE"]}}, 
                              {time: {$lt:ISODate("2013-12-09T00:00:00Z")}}
                          ]
                     }
                   }
                  ])

그리고 당신이 하려고 하는 것을 위해, 당신은 필요하지 않습니다.$and.

{
  $match: {
    $or:[
      {'sender':sender, 'recipient':recipient},
      {'recipient':sender,'sender':recipient}
    ]
  }
}

$ 또는 사용

db.test.find( {$and: [ {"type": {$in: ["TOYS"]}}, 
                       {"type": {$nin: ["BARBIE"]}}, 
                       {"time": {$lt:ISODate("2013-12-09T00:00:00Z")}}
                     ]
})

AND는 FIND와 함께 작동하며 일치하는 배열을 수신합니다(그러나 일치 지침은 아닙니다). 집계 프레임워크는 단어가 말하는 것처럼 완전히 다른 것에 대한 것입니다(카운트, 합계, 평균 등 그룹화하거나 풀 가치가 있는 등).

$176 다음 $match의 예

db.orders.aggregate([
  {
    "$lookup": {
      "from": "user",
      "localField": "user",
      "foreignField": "_id",
      "as": "user"
    }
  },
  {
    "$unwind": "$user"
  },
  {
    "$match": {
      "$and": [
        {
          "privacy.mode": {
            "$gt": 0
          }
        },
        {
          "user.privacy.mode": {
            "$gt": 0
          }
        }
      ]
    }
  }
])
``

언급URL : https://stackoverflow.com/questions/20469712/using-and-with-match-in-mongodb

반응형