Intro
์๋ ํ์ธ์. ์ด๋ฒ ์๊ฐ์๋ MongoDB ๋ชฝ๊ณ ๋๋น์์ ์ฟผ๋ฆฌ๋ฅผ ์ ๋ ฌํ๋ ๋ฐฉ๋ฒ์ ๋ํด ์์๋ณด๊ฒ ์ต๋๋ค. ์ฐ์ ๊ทธ์ ์์ ์ค๋ฆ์ฐจ์๊ณผ ๋ด๋ฆผ์ฐจ์์ ์๋ฏธ์ ๋ํด ํจ๊ป ์ดํด๋ณด๋๋ก ํด์.
Ascending / ์ค๋ฆ์ฐจ์
์ค๋ฆ์ฐจ์ (Ascending)์ smallest to largest ๋ก, ์์ ์ซ์์์ ํฐ ์ซ์๋ก ์ ๋ ฌํ๋ ๊ฒ์ ์๋ฏธํฉ๋๋ค. (ex. 1 -> 2 -> 3 -> 4 -> 5)
Descending / ๋ด๋ฆผ์ฐจ์
๋ด๋ฆผ์ฐจ์ (Descending)์ largest to smallest๋ก, ํฐ ์ซ์์์ ์์ ์ซ์๋ก ์ ๋ ฌํ๋ ๊ฒ์ ์๋ฏธํฉ๋๋ค. (ex. 5 -> 4 -> 3 -> 2 -> 1)
How to sort in MongoDB
MongoDB์์ 1์ ์ค๋ฆ์ฐจ์, -1์ ๋ด๋ฆผ์ฐจ์ ์ ๋ ฌ์ ํด๋นํฉ๋๋ค. ์๋ฅผ ๋ค์ด ์๋์ ๊ฐ์ BSON ์๋ค๊ณ ๊ฐ์ ํด๋ด ์๋ค. ์ฐธ๊ณ ๋ก MongoDB๋ ์คํค๋ง๊ฐ ๊ณ ์ ๋ ๊ตฌ์กฐ ๋์ JSON ํํ์ ๋์ ์คํค๋งํ ๋ฌธ์๋ฅผ ์ฌ์ฉํฉ๋๋ค. ์ด๋ฅผ BSON์ด๋ผ๊ณ ๋ถ๋ฆ ๋๋ค.
{
"key": 1,
"username": "Liam",
"age" : 20
},
{
"key": 2,
"username": "Noah",
"age" : 24
},
{
"key": 3,
"username": "Oliver",
"age" : 16
},
{
"key": 4,
"username": "William",
"age" : 36
},
{
"key": 5,
"username": "Mason",
"age" : 40
},
# 1. ์ค๋ฆ์ฐจ์ (asc)
age๋ฅผ ๊ธฐ์ค์ผ๋ก ์ค๋ฆ์ฐจ์์ ํ๊ณ ์ถ์ ๊ฒฝ์ฐ ์๋์ ์ฟผ๋ฆฌ๋ฅผ ์ฌ์ฉํฉ๋๋ค.
db.collection.find().sort({"age": 1})
# 2. ๋ด๋ฆผ์ฐจ์ (desc)
age๋ฅผ ๊ธฐ์ค์ผ๋ก ๋ด๋ฆผ์ฐจ์์ ํ๊ณ ์ถ์ ๊ฒฝ์ฐ ์๋์ ์ฟผ๋ฆฌ๋ฅผ ์ฌ์ฉํฉ๋๋ค.
db.collection.find().sort({"age": -1})