Bird
Raised Fist0
MongoDBquery~5 mins

sort method ascending and descending in MongoDB - Cheat Sheet & Quick Revision

Choose your learning style10 modes available

Start learning this pattern below

Jump into concepts and practice - no test required

or
Recommended
Test this pattern10 questions across easy, medium, and hard to know if this pattern is strong
Recall & Review
beginner
What does the sort() method do in MongoDB?
The sort() method orders the documents in a query result by one or more fields, either ascending or descending.
Click to reveal answer
beginner
How do you specify ascending order in MongoDB's sort() method?
Use 1 as the value for the field in the sort() method to sort ascending (smallest to largest).
Click to reveal answer
beginner
How do you specify descending order in MongoDB's sort() method?
Use -1 as the value for the field in the sort() method to sort descending (largest to smallest).
Click to reveal answer
beginner
Example: How to sort documents by age ascending in MongoDB?
Use db.collection.find().sort({ age: 1 }) to get documents sorted by the age field from smallest to largest.
Click to reveal answer
beginner
Example: How to sort documents by age descending in MongoDB?
Use db.collection.find().sort({ age: -1 }) to get documents sorted by the age field from largest to smallest.
Click to reveal answer
What value do you use in sort() to sort a field in ascending order?
A-1
Btrue
C0
D1
What does db.collection.find().sort({ score: -1 }) do?
ASorts documents by score descending
BSorts documents by score ascending
CFilters documents with score -1
DSorts documents randomly
Which of these is the correct way to sort by two fields, name ascending and age descending?
Asort({ name: 1, age: -1 })
Bsort({ name: -1, age: 1 })
Csort({ name: 0, age: 0 })
Dsort({ name: true, age: false })
If you want the smallest values first, which sort value do you use?
A-1
B1
C0
Dnull
What happens if you omit the sort() method in a MongoDB query?
ADocuments are sorted ascending by default
BDocuments are sorted descending by default
CDocuments are returned in natural order (insertion order)
DQuery will fail
Explain how to use the sort() method in MongoDB to order query results.
Think about how you tell MongoDB which field and direction to sort.
You got /5 concepts.
    Describe the difference between ascending and descending sort orders in MongoDB and how to specify each.
    Focus on the numeric values used in the sort method.
    You got /4 concepts.

      Practice

      (1/5)
      1. What does the sort({ age: 1 }) method do in MongoDB?
      easy
      A. Deletes documents with age less than 1
      B. Sorts documents by age in descending order (largest to smallest)
      C. Filters documents where age equals 1
      D. Sorts documents by age in ascending order (smallest to largest)

      Solution

      1. Step 1: Understand the sort method parameter

        The number 1 in sort({ age: 1 }) means ascending order.
      2. Step 2: Interpret the sorting effect

        Documents will be arranged from smallest age to largest age.
      3. Final Answer:

        Sorts documents by age in ascending order (smallest to largest) -> Option D
      4. Quick Check:

        sort({ field: 1 }) = ascending order [OK]
      Hint: 1 means ascending order, -1 means descending order [OK]
      Common Mistakes:
      • Confusing 1 with descending order
      • Thinking sort filters data
      • Assuming sort deletes documents
      2. Which of the following is the correct syntax to sort documents by score in descending order in MongoDB?
      easy
      A. db.collection.find().sort({ score: -1 })
      B. db.collection.find().sort({ score: 1 })
      C. db.collection.find().sort(score: -1)
      D. db.collection.find().sort({ -1: score })

      Solution

      1. Step 1: Check the correct object syntax for sort

        The sort method requires an object with field name as key and 1 or -1 as value, inside curly braces.
      2. Step 2: Identify descending order syntax

        Descending order is indicated by -1, so { score: -1 } is correct.
      3. Final Answer:

        db.collection.find().sort({ score: -1 }) -> Option A
      4. Quick Check:

        sort({ field: -1 }) = descending order [OK]
      Hint: Use curly braces and colon: sort({ field: -1 }) [OK]
      Common Mistakes:
      • Missing curly braces around sort argument
      • Using parentheses instead of braces
      • Putting -1 as key instead of value
      3. Given the documents: [{"name": "Anna", "score": 85}, {"name": "Ben", "score": 92}, {"name": "Cara", "score": 78}], what will be the order of names after running db.students.find().sort({ score: 1 })?
      medium
      A. ["Ben", "Anna", "Cara"]
      B. ["Cara", "Ben", "Anna"]
      C. ["Cara", "Anna", "Ben"]
      D. ["Anna", "Cara", "Ben"]

      Solution

      1. Step 1: Understand ascending sort by score

        Sorting by score ascending means from smallest to largest score: 78, 85, 92.
      2. Step 2: Map scores to names in order

        78 = Cara, 85 = Anna, 92 = Ben, so order is ["Cara", "Anna", "Ben"].
      3. Final Answer:

        ["Cara", "Anna", "Ben"] -> Option C
      4. Quick Check:

        sort({ score: 1 }) = ascending order [OK]
      Hint: Ascending sort orders from smallest to largest [OK]
      Common Mistakes:
      • Mixing ascending with descending order
      • Sorting by name instead of score
      • Confusing array order in output
      4. What is wrong with this MongoDB query?
      db.products.find().sort({ price: 2 })
      medium
      A. The find() method cannot be chained with sort()
      B. The sort value must be 1 or -1, not 2
      C. The field name 'price' is invalid
      D. Missing parentheses after sort

      Solution

      1. Step 1: Check valid sort values

        MongoDB sort only accepts 1 for ascending or -1 for descending, not 2.
      2. Step 2: Identify the error cause

        Using 2 will cause a syntax or runtime error because it's invalid.
      3. Final Answer:

        The sort value must be 1 or -1, not 2 -> Option B
      4. Quick Check:

        sort values = 1 or -1 only [OK]
      Hint: Sort values must be exactly 1 or -1 [OK]
      Common Mistakes:
      • Using numbers other than 1 or -1
      • Assuming any positive number works
      • Thinking sort can't chain after find()
      5. You have a collection with documents containing category and price. How do you sort first by category ascending, then by price descending?
      hard
      A. db.collection.find().sort({ category: 1, price: -1 })
      B. db.collection.find().sort({ price: -1, category: 1 })
      C. db.collection.find().sort({ category: -1, price: 1 })
      D. db.collection.find().sort({ category: 1 }).sort({ price: -1 })

      Solution

      1. Step 1: Understand multi-field sort syntax

        MongoDB sorts by fields in the order they appear in the object passed to sort().
      2. Step 2: Apply ascending to category and descending to price

        Use { category: 1, price: -1 } to sort category ascending, then price descending within each category.
      3. Final Answer:

        db.collection.find().sort({ category: 1, price: -1 }) -> Option A
      4. Quick Check:

        Multi-field sort = object with fields in order [OK]
      Hint: List fields in sort object in desired priority order [OK]
      Common Mistakes:
      • Reversing field order changes sort priority
      • Trying to chain multiple sort() calls
      • Using wrong sort values for fields