5

I have a collection where the fields are string but those strings can have a numeric value inside e.g.:

myObject: {
examples: [
         {example: "words", ...},
         {example: "more words", ...},
         {example: "111", ...},
         {example: "4502", ...}
         ...
         ]
...
}

How can I query "111" and "4502" and any other numeric values in string format?

Jenninha
  • 1,357
  • 2
  • 20
  • 42

1 Answers1

18

You can use a regular expression in your query object to do that:

// Select docs where at least one examples element contains an example value
// that's made up only of digits.
db.test.find({'examples.example': /^\d+$/})
JohnnyHK
  • 305,182
  • 66
  • 621
  • 471