MongoDB 中的 ({$natural: 1}) 是什么?


({$natural − 1}) 的作用类似于 LIFO(后进先出),这意味着最后插入的文档会首先显示。

让我们创建一个包含文档的集合 −

> db.demo614.insertOne({"CountryName":"US"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e988cddf6b89257f5584d8e")
}
> db.demo614.insertOne({"CountryName":"UK"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e988ce0f6b89257f5584d8f")
}
> db.demo614.insertOne({"CountryName":"AUS"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e988ce3f6b89257f5584d90")
}
> db.demo614.insertOne({"CountryName":"IND"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e988cebf6b89257f5584d91")
}

使用 find() 方法显示集合中的所有文档 −

> db.demo614.find();

这将产生以下输出 −

{ "_id" : ObjectId("5e988cddf6b89257f5584d8e"), "CountryName" : "US" }
{ "_id" : ObjectId("5e988ce0f6b89257f5584d8f"), "CountryName" : "UK" }
{ "_id" : ObjectId("5e988ce3f6b89257f5584d90"), "CountryName" : "AUS" }
{ "_id" : ObjectId("5e988cebf6b89257f5584d91"), "CountryName" : "IND" }

以下是使用 ({$natural: 1}) 的查询 −

> db.demo614.find().sort({$natural:-1})

这将产生以下输出 −

{ "_id" : ObjectId("5e988cebf6b89257f5584d91"), "CountryName" : "IND" }
{ "_id" : ObjectId("5e988ce3f6b89257f5584d90"), "CountryName" : "AUS" }
{ "_id" : ObjectId("5e988ce0f6b89257f5584d8f"), "CountryName" : "UK" }
{ "_id" : ObjectId("5e988cddf6b89257f5584d8e"), "CountryName" : "US" }

更新于: 2020 年 5 月 12 日

780 次浏览

开启你的职业

通过完成课程获得认证

开始
广告