Computer >> 컴퓨터 >  >> 프로그램 작성 >> MongoDB

MongoDB 문서에서 첫 번째 배열 요소를 가져오기 위한 배열 투영

<시간/>

배열의 첫 번째 요소를 원하면 $gte와 함께 $slice를 사용할 수 있습니다. 문서로 컬렉션을 만들자 −

> db.demo640.insertOne({Name:"John","Scores":[80,90,75]});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e9c2eb86c954c74be91e6e0")
}
> db.demo640.insertOne({Name:"Chris","Scores":[85,70,89]});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e9c2ece6c954c74be91e6e1")
}

find() 메서드를 사용하여 컬렉션의 모든 문서 표시 -

> db.demo640.find();

이것은 다음과 같은 출력을 생성합니다 -

{ "_id" : ObjectId("5e9c2eb86c954c74be91e6e0"), "Name" : "John", "Scores" : [ 80, 90, 75 ] }
{ "_id" : ObjectId("5e9c2ece6c954c74be91e6e1"), "Name" : "Chris", "Scores" : [ 85, 70, 89 ] }

다음은 sing $slice −

를 사용하여 배열을 투영하는 쿼리입니다.
> db.demo640.find({Scores:{$gte:85}},{ "Scores": {$slice : 1}});

이것은 다음과 같은 출력을 생성합니다 -

{ "_id" : ObjectId("5e9c2eb86c954c74be91e6e0"), "Name" : "John", "Scores" : [ 80 ] }
{ "_id" : ObjectId("5e9c2ece6c954c74be91e6e1"), "Name" : "Chris", "Scores" : [ 85 ] }