Chase AdamsChase Adams
AboutContentPromptsPrototypesNewsletter

MongoDB

Essays and updates on product, engineering, and AI by Chase Adams.

1 minute read

Post Details

Published
Jul 23, 2022
Category
Engineering
Share
ChatGPT

Latest Posts

A 2x2 Framework for Navigating AI Disruption

A 2x2 Framework for Navigating AI Disruption

Not all change requires the same response. A new framework for diagnosing which kind of disruption you're facing—and choosing the right strategy.

Common Query Patterns

This is a collection built up over time of queries I use and find helpful.

  • update or add a property to subdocuments of all found documents (MongoDB)

Document Arrays

Find any documents where key smartEvents exist and has an array length that's greater than 0:

{smartEvents: { $exists: true, $not: { $size: 0 } } }

Find any subdocuments of governs and an array key for groups where groups contains an ObjectID of 622b8fe0968213000946ee1e

{"governs.groups":{ $in: [ObjectId('622b8fe0968213000946ee1e')]}}

$elemMatch

$elemMatch is a useful operator for when you want to search an array of subdocuments where a field contains a value. In this example, responses is an array with a document that has a field of content:

{responses: {$elemMatch: {"content": {$regex:"Maybe tolerances could"}}}}

Also note $regex in the query above. This operator lets you search for a regular expression (or a plain string) within a value. This is useful when you don't want to search the whole value of a property in a document.

MongoDB Compass

I use Compass pretty heavily for querying data in MongoDB.

AboutAI Workflow SpecContentStacksNewsletterPromptsRSS