- Page 2 and 3: Example Application Potion Reviews
- Page 4 and 5: Conjuring MongoDB Level 1 - Section
- Page 6 and 7: MongoDB Comparison to SQL SQL Mongo
- Page 8 and 9: Collections Group Documents Collect
- Page 10 and 11: How Do We Interact With MongoDB? Al
- Page 12 and 13: Using the Shell MongoDB comes with
- Page 14 and 15: Inserting a Document Into a Collect
- Page 16 and 17: Finding All Potions We can use the
- Page 18 and 19: Conjuring MongoDB Level 1 - Section
- Page 22 and 23: What Else Can We Store? Documents a
- Page 24 and 25: Adding Price and Score We can store
- Page 26 and 27: Adding a List of Ingredients Arrays
- Page 28 and 29: Embedded Documents We embed documen
- Page 30 and 31: Finding Potions by Ingredients Arra
- Page 32 and 33: What About Insert Validations? If w
- Page 34 and 35: Validations Supported by MongoDB Mo
- Page 36 and 37: Mystical Modifications Level 2 - Se
- Page 38 and 39: Delete a Single Document The remove
- Page 40 and 41: Delete Multiple Documents If our qu
- Page 42 and 43: Updating a Document We can use the
- Page 44 and 45: Update Without an Operator If the u
- Page 46 and 47: Recording Potion Views Time to star
- Page 48 and 49: Update a Non-existing Potion If we
- Page 50 and 51: Updating Once More If we run the sa
- Page 52 and 53: Improving Potions We rushed a bit d
- Page 54 and 55: Updating a Field Name With $rename
- Page 56 and 57: The Dilemma of Updating an Array Na
- Page 58 and 59: Updating Single Array Value The $se
- Page 60 and 61: Updating Values Without Knowing Pos
- Page 62 and 63: Shrunken Conundrum Uh-oh — the sh
- Page 64 and 65: Useful Update Operators MongoDB pro
- Page 66 and 67: Removing the First or Last Value of
- Page 68 and 69: Adding Unique Values to an Array Th
- Page 70 and 71:
Materializing Potions Level 3 - Sec
- Page 72 and 73:
Querying With Multiple Criteria We
- Page 74 and 75:
Comparison Query Operators We can u
- Page 76 and 77:
Finding Potions Between Prices We c
- Page 78 and 79:
Range Queries on an Array Each poti
- Page 80 and 81:
Be Careful When Querying Arrays Wit
- Page 82 and 83:
Not Matching a Document Conversely,
- Page 84 and 85:
Listing Our Best Potions We’re pu
- Page 86 and 87:
Excluding Fields Sometimes you want
- Page 88 and 89:
Either Select or Exclude Fields Whe
- Page 90 and 91:
Introducing the Cursor Whenever we
- Page 92 and 93:
Continuing to Iterate Through the C
- Page 94 and 95:
Sort by Price We want to implement
- Page 96 and 97:
Paginating the Potions Page We only
- Page 98 and 99:
Basic Pagination We can implement b
- Page 100 and 101:
Morphing Models Level 4 - Section 1
- Page 102 and 103:
Storing Favorites Within a User Use
- Page 104 and 105:
Storing Vendor Information Each pot
- Page 106 and 107:
Referencing Vendor Information Inst
- Page 108 and 109:
Querying a Referenced Document In o
- Page 110 and 111:
More Features of Embedded Documents
- Page 112 and 113:
Referenced Documents Exist Independ
- Page 114 and 115:
Dangers of Not Having Transactions
- Page 116 and 117:
Choosing Which Route to Take When d
- Page 118 and 119:
First Question: How Will the Data B
- Page 120 and 121:
Second Question: What’s the Size
- Page 122 and 123:
Third Question: Will the Data Chang
- Page 124 and 125:
Embedding Comments in Potions We ca
- Page 126 and 127:
Data Modeling Guidelines and Takeaw
- Page 128 and 129:
Finding the Number of Potions Per V
- Page 130 and 131:
Using the Aggregation Framework to
- Page 132 and 133:
Field Paths Vs. Operators When valu
- Page 134 and 135:
Averaging Potion Grade Per Vendor N
- Page 136 and 137:
Using $max and $min Together Name:
- Page 138 and 139:
Pulling Conditional Vendor Informat
- Page 140 and 141:
How the Pipeline Works Each stage m
- Page 142 and 143:
Grouping Potions With Data db.potio
- Page 144 and 145:
Matching Potions Under $15 Query st
- Page 146 and 147:
Grouping Potions by Vendor Group st
- Page 148 and 149:
Limiting the Number of Documents We
- Page 150 and 151:
Projections While Aggregating We ca