본문 바로가기
2021-1/Expert

MongoDB | Aggregate Group by 같은 년도

by 이망고_ 2021. 10. 29.

Aggregate Group by 같은 년도

와... 화목금 투자해서 드디어 몽고DB 에서 년도별로 그룹핑했다!!

 

Grouping 설계

1. substr() 으로 잘라서 같은 년도만 그룹핑하기 (왜냐면 날짜가 str 으로 되어 있는 데이터)

2. datetoString 으로 변환 후, 년도별 그룹핑하기

 

어제까지 substr() 으로도 해보고, datefromString 으로 해서 년도별로 묶는 걸로 했는데 

좀만 하면 더 될 것 같은데 자꾸 머리 안돌아가고...

그러다가 불금, 저녁 밥 먹고 해야겠다 해서 하고 있었는데!!

 

year 값만 안나오는거.. 그러다가 불현듯 datetime 변환한 변수를 pSdate 에 저장한 거 생각나서!!!! ㅎㅎ 

대입해봤는데 잘 됐다!

 

혹여나 MongoDB 에서 연도별로 그룹핑 해야 하는 상황이라면 이전 포스팅도 함께 보시면 될 것 같다

헐.. 첫 코드 구현(쿼리생성이지만) 같애.. 넘 행복한데?ㅎㅎㅎ

 

 

 

 

 

db.Rawdata.aggregate( [ { $match: { "keyId" : 519 } } , { $project: { pSdate : {$dateFromString: { dateString: "$prdStart" }} , pEdate : {$dateFromString: { dateString: "$prdEnd" }} , prdStartSubstring: { $substr: [ "$prdStart", 0, 4 ] }, prdEndSubtring: { $substr: [ "$prdEnd", 0, 4 ] }, } } , { $group: {_id: {year: {$year: "$pSdate" }}, count: {$sum: 1}, total: {$sum: '$sub_total'}} }, {$sort: {_id:-1}}, ] )

태그 꼭 이렇게 걸어줘야지

구글링할 때 진짜 저 단어만 몇 번 검색했는지 모르겠다,,

# Aggregate Group by 같은 년도

'2021-1 > Expert' 카테고리의 다른 글

Jupyter notebook | 안열림 문제 해결  (0) 2021.10.31
LDA | 5개 키워드 추출  (0) 2021.10.29
MongoDB | Aggregate(집계) substr  (0) 2021.10.28
MongoDB | dateFromString  (0) 2021.10.28
MongoDB | Aggregate Group by  (0) 2021.10.27