mongodb - Mongo按实际上是数字的字符串值排序

标签 mongodb

我有一个包含以下对象的集合:

{ 
    "_id" : ObjectId("57f00cf47958af95dca29c0c"), 
    "id" : "...", 
    "threadId" : "...", 
    "ownerEmail" : "...@...", 
    "labelIds" : [
       ...
    ], 
    "snippet" : "...", 
    "historyId" : "35699995", 
    "internalDate" : "1422773000000", 
    "headers" : {
        "from" : "...@...", 
        "subject" : "....", 
        "to" : "...@..."
    }, 
    "contents" : {
        "html" : "...."
    }
}

访问对象时,我想按 iternalDate 值对它们进行排序,该值应该是整数,但它是一个字符串。即使这些是字符串,是否有办法在获取时对它们进行排序?按字母顺序?或者有没有办法轻松地将它们转换为整数?

最佳答案

整理是您所需要的...

db.collection.find()
  .sort({internalDate: 1})
  .collation({locale: "en_US", numericOrdering: true})

关于mongodb - Mongo按实际上是数字的字符串值排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39815265/

相关文章:

MongoDB Stitch 返回数据作为 $NumberDouble 而不是数字本身

mongodb - 如何在 Doctrine MongoDB 中使用 QueryBuilderAPI 通过多个条件查找一个字段的文档?

node.js - 启动 node.js 应用程序时,我收到 MongoError

mongodb - 使用 MongoDB 聚合框架四舍五入到小数点后 2 位

node.js - 如何从使用 gridFS 存储的 mongodb 读取 mp3 文件?

python - 尝试使用 python 连接到 mongodb atlas 时连接超时

c# - 模拟 MongoCollection 崩溃 - 调用目标抛出异常

javascript - Mongoose:类型错误: 'mongooseSchemahere' 不是函数

c# - ORM 与 NoSQL API 是多余的吗?

javascript - 如何在 mongodb 聚合管道中使用 Javascript 对象?