mongodb - projection

MongoDB

게시판 내부에 코멘트가 달리는데 그 코멘트 중 하나만 선택해서 보여주고 싶을 때 사용.(코멘트 수정, 삭제에 사용)

projection

필요한 부분만 뽑아오는 projection 만드는 법

db.getCollection('board').find(
    {"comments._id": ObjectId("5e7327ecde91b67bba62b234")},
    {
        "comments": {
            $elemMatch:{"_id": ObjectId("5e7327ecde91b67bba62b234")
            }
        }
    }
)

이걸 PHP 에 적용하게되면...

$db = $this->mongo->Board; // DB 선택
$collection = $db->board; // 게시판 선택

$filter['comments._id'] = $comment_id;
$options = [];
$options['projection'] = [
    'comments' => [
        '$elemMatch' => [
            '_id' => $comment_id
        ]
    ]
];

$document = $collection->findOne($filter, $options);

'TIL' 카테고리의 다른 글

호이스팅(Hoisting)  (0) 2020.03.27
객체 순회/배열 순회  (0) 2020.03.27
자바스크립트 예약어  (0) 2020.03.27
[TIL]2020.03.06  (0) 2020.03.06
스스로의 다짐  (0) 2020.03.06

+ Recent posts