[MONGODB] MongoDB를 별개의 집계
MONGODBMongoDB를 별개의 집계
나는 각 상태에 가장 지퍼와 도시를 찾는 쿼리에서 일하고 있어요 :
db.zips.distinct("state", db.zips.aggregate([ {$group:{_id:{state:"$state", city:"$city"},numberOfzipcodes:{$sum:1}}}, {$sort:{numberOfzipcodes:-1}}]))
쿼리의 집계 부분은 잘 작동 것 같다,하지만 난 뚜렷한를 추가 할 때 나는 빈 결과를 얻을.
나는 ID에 상태를 가지고 있기 때문이다? 나는 별개의 ( "_ id.state 같은 일을 할 수 있습니까?
해결법
-
==============================
1.고유하고 통합 프레임 워크는 상호 작동하지 않습니다.
고유하고 통합 프레임 워크는 상호 작동하지 않습니다.
대신 당신은 원하는 :
db.zips.aggregate([ {$group:{_id:{city:'$city', state:'$state'}, numberOfzipcodes:{$sum:1}}}, {$sort:{numberOfzipcodes:-1}}, {$group:{_id:'$_id.state', city:{$first:'$_id.city'}, numberOfzipcode:{$first:'$numberOfzipcodes'}}} ]);
-
==============================
2.당신은 다른 오브젝트를 계산 집계 프레임 워크 $ addToSet를 사용할 수 있습니다.
당신은 다른 오브젝트를 계산 집계 프레임 워크 $ addToSet를 사용할 수 있습니다.
예를 들면 :
db.collectionName.aggregate([{ $group: {_id: null, uniqueValues: {$addToSet: "$fieldName"}} }])
-
==============================
3.SQL 쿼리 : (별개의 계산 및 그룹화)
SQL 쿼리 : (별개의 계산 및 그룹화)
select city,count(distinct(emailId)) from TransactionDetails group by city;
등가 몽고의 쿼리는 다음과 같을 것이다 :
db.TransactionDetails.aggregate([ {$group:{_id:{"CITY" : "$cityName"},uniqueCount: {$addToSet: "$emailId"}}}, {$project:{"CITY":1,uniqueCustomerCount:{$size:"$uniqueCount"}} } ]);
-
==============================
4.또한 속는 필터 단일 배열에 $ setUnion를 호출 할 수 있습니다 :
또한 속는 필터 단일 배열에 $ setUnion를 호출 할 수 있습니다 :
{ $project: {Package: 1, deps: {'$setUnion': '$deps.Package'}}}
from https://stackoverflow.com/questions/16368638/mongodb-distinct-aggregation by cc-by-sa and MIT license
'MONGODB' 카테고리의 다른 글
[MONGODB] 어떻게 pymongo 원격 MongoDB를 연결하는 (0) | 2020.01.07 |
---|---|
[MONGODB] MongoDB를 및 C # 찾기 () (0) | 2020.01.04 |
[MONGODB] MongoDB를, 샤딩 및 여러 창 서비스 (0) | 2019.12.30 |
[MONGODB] 하위 문서와 nodejs / 몽구스의 부분 갱신 (0) | 2019.12.29 |
[MONGODB] 구글 앱 엔진에서 MongoDB를 시도 하나? (0) | 2019.12.29 |