[typescript] 타입스크립트에서 MongoDB의 특정 필드를 기준으로 데이터 그룹화하기

MongoDB에서 특정 필드를 기준으로 데이터를 그룹화하고자 할 때, 타입스크립트를 사용하여 코드를 작성하는 방법에 대해 다룰 것입니다.

MongoDB와 타입스크립트 연동

먼저, MongoDB 데이터베이스를 타입스크립트 애플리케이션과 연동해야 합니다. Mongoose는 MongoDB와의 상호작용을 용이하게 해주는 Node.js용 ORM(Object-Relational Mapping) 라이브러리입니다.

import mongoose from 'mongoose';

mongoose.connect('mongodb://localhost:27017/yourDB', { useNewUrlParser: true, useUnifiedTopology: true });

위의 예시에서 ‘yourDB’는 실제 데이터베이스 이름으로 대체되어야 합니다.

데이터 그룹화

그 다음으로, 특정 필드를 기준으로 MongoDB에서 데이터를 그룹화하는 방법에 대해 알아보겠습니다. MongoDB의 aggregation framework를 사용하여 이 작업을 수행할 수 있습니다.

const result = await YourModel.aggregate([
  { $group: { _id: '$yourField', total: { $sum: 1 } } }
]);

위의 코드에서 YourModel은 Mongoose 모델이고, yourField는 그룹화할 기준이 되는 필드입니다. 이 코드는 $yourField 값을 기준으로 그룹화하고, 각 그룹별로 문서의 수를 반환합니다.

이제 데이터를 가져와서 사용할 수 있습니다. 결과는 다음과 같이 될 것입니다.

console.log(result);

이것으로 타입스크립트에서 MongoDB의 특정 필드를 기준으로 데이터를 그룹화하는 방법을 알아보았습니다. 이러한 데이터 그룹화는 다양한 유용한 응용 프로그램에 적용될 수 있습니다.

참고 자료

위의 과정으로 타입스크립트에서 MongoDB의 특정 필드를 기준으로 데이터를 그룹화할 수 있습니다.