我在MongoDB中有一个表,在其中可以按降序获取字段 按system_id
排序db.job_parameters_mongo.find().sort({system_id : -1})
这很好,但是由于system_id是字符串字段,所以给我不正确的结果。在以降序顺序排序之前,有什么方法可以将system_id转换为数字。我在此站点上看到有一种方法可以使用forEach( how to convert string to numerical values in mongodb),但是使用了一个函数。是否还有其他方法,例如在rdbms中必须有to_number?
答案 0 :(得分:1)
您可以使用$toInt
的4.0版本。
db.job_parameters_mongo.aggregate([
{"$addFields":{"system_id":{"$toInt":"$system_id"}}},
{"$sort":{"system_id":-1}}
])