MongoDB에서 그룹 작업의 일부로 맵을 만들려고했지만 행운이 없습니다. 다음과 같이MongoDB 집계에서지도를 만들 수 있습니까?
내 문서 구성되어 있습니다 :
나는 모든 "유형"그룹에 원하는 값으로 키로 작가의 이름이 포함 된지도와 노래가 내 통합의 일환으로 예를 들어type : artist,
artist : David Bowie,
song : "Starman"
. 다음과 같은 출력의 경우 :
[_id : artist, myMap : ["David Bowie" : "Starman"]]
그러나 이것이 가능한지 확실하지 않습니다. Mongos $ push 연산을 사용해 보았지만 맵을 푸시하려고 할 때 좋아하지 않습니다. 아무도 전에 이것을 시도한 적이 있습니까?
는 Heres는 쿼리가 나는 시도 :db.music.aggregate(
{
$group: {
_id: "$type",
myMap : { $push: {"$artist" : "$song" }}
}
}
)
이 당신을 위해 무엇을 찾고에 근접 할 수있다 유형 ": 1, \t \t foo는 : {"아티스트 ":"$ 아티스트 ","노래 ":"$ 노래 "} \t}} \t {$ 그룹 : { \t \t"_id ":"$ 유형 ", \t \t "지도": {$ push : "$ foo"} \t} ) –
@orid 감사합니다. 답변으로 표시하고 동의하겠습니다. 완벽하게 작동합니다. – Travis