2013-05-17 3 views
5

J'ai une collection où les champs sont chaîne mais ces chaînes peuvent avoir une valeur numérique à l'intérieur, par exemple:MongoDB - Comment sélectionner les chaînes numériques uniquement/Vérifiez si la chaîne est numérique dans mongo-shell

myObject: {
Exemples: [
                  {exemple: "mots", ...},
                  {exemple: "plus de mots", ...},
                  {exemple: "111", ...},
                  {exemple: "4502", ...}
                  ...
                 ]
...
}

Comment puis-je interroger "111" et "4502" et toutes les autres valeurs numériques dans la chaîne format?

Répondre

15

Vous pouvez utiliser une expression régulière dans votre objet de requête pour le faire:

// 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+$/}) 
Questions connexes