处理作为字符串并视为数字的MongoDB字段

时间:2015-11-25 11:19:32

标签: python mongodb pymongo

我有一个存储在Mongo中的字段存储为字符串,但大部分时间它都包含一个数字,但如果该数字不存在则包含N / A'例如字符串。我正在使用PyMongo并寻找一种执行小于和大于查询的有效方法,但显然我不想将其作为字符串进行比较。

这就是我所拥有的:

awk

所以我想选择{"field": '5.6'} {"field": 'N/A'} results = mongo.db.validated.find({"field": "$gt": float(minimum)}, "field": {"$lt": float(maximum)}}) minimum之间的值,但忽略maximum

1 个答案:

答案 0 :(得分:1)

您可以添加type检查以进行查询,如下所示:

results = mongo.db.validated.find({"field": {"$type": 1, "$gt": float(minimum),"$lt": float(maximum)}})

$ type:1 将返回双数据类型。