MongoDB
 sql >> Base de données >  >> NoSQL >> MongoDB

Opérateurs MongoDB $gt/$lt avec des prix stockés sous forme de chaînes

Si vous avez l'intention d'utiliser $gt avec des chaînes, vous devrez utiliser regex, ce qui n'est pas très performant en termes de performances. Il est plus simple de créer simplement un nouveau champ contenant la valeur numérique du prix ou de modifier ce type de champ en int/double. Une version javascript devrait également fonctionner, comme ceci :

db.products.find("this.price > 30.00")

car js le convertira en nombre avant utilisation. Cependant, les index ne fonctionneront pas sur cette requête.