몽고DB의 컬렉션에서 Document를 찾은 후 이를 출력할 때
정렬(sorting)하는 방법을 알아봅니다.
# MongoDB find() 후 정렬하는 방법
MongoDB의 데이터를 원하는 방식으로 정렬하고자 합니다. 먼저 원하는 데이터만 찾기 위해서 find()를 사용하고 반환된 cursor 객체에
sort() 함수를 사용해 아래와 같이 정렬 할 수 있습니다.
db.collectionName.find().sort(sort조건)
여기서
조건값을 설정하는 방법을 아래에서 간략하게 알아보겠습니다.
조건값은 정렬할 필드명과
1, -1을 사용하여 오름차순 또는 내림차순을 결정하게됩니다. 아래처럼 사용되죠.
db.site.find().sort({ 'date': -1 })
여기서 sort() 메소드의 내부에 소팅할 값을 key와 value로 추가하였습니다. 즉 date 필드를 기준으로 값의 1과 -1은 각각 오름차순, 내림차순을 의미합니다.
1 // 오름차순 정렬-1 // 내림차순 정렬
그럼 몇 가지 예제를 만들어 사용해 봅니다.
! MongoDB sort() 정렬 예제보기
만약 현재 데이터베이스의 numbers라는 컬렉션 내부에 아래와 같은 documents가 존재한다고 생각해봅니다.
{
'no': '1',
'no': '2',
'no': '3'
}
위 데이터를 정렬할 경우 아래처럼 사용할 수 있죠.
db.site.find.sort({'no': -1})
결과는 아래와 같습니다.
{
'no': '3,
'no': '2',
'no': '1'
}
설명하면 sort()에 전달한 파라미터는 소팅기준필드로 no를 선택하였고 값은 -1로 내림차순을 선택한 방법입니다.
여기까지 sort()를 사용하여 정렬한 방법을 알아봤습니다.