如何在mongodb中按降序显示记录

时间:2018-09-05 15:04:48

标签: mongodb mongodb-query

我在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?

1 个答案:

答案 0 :(得分:1)

您可以使用$toInt的4.0版本。

db.job_parameters_mongo.aggregate([
 {"$addFields":{"system_id":{"$toInt":"$system_id"}}}, 
 {"$sort":{"system_id":-1}}
])