如何在 MongoDB 中查询类似于 “like” 语句的内容?


若要实现类似于 “like” 的功能,可以在 MongoDB 中使用 find() 和 //。我们使用文档创建一个集合 −

> db.demo686.insertOne({"FirstName":"Robert"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5ea55182a7e81adc6a0b395c")
}
> db.demo686.insertOne({"FirstName":"John"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5ea55186a7e81adc6a0b395d")
}
> db.demo686.insertOne({"FirstName":"ROBERT"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5ea5518fa7e81adc6a0b395e")
}
> db.demo686.insertOne({"FirstName":"David"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5ea55195a7e81adc6a0b395f")
}
> db.demo686.insertOne({"FirstName":"robert"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5ea5519ba7e81adc6a0b3960")
}

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

> db.demo686.find();

这将生成以下输出 −

{ "_id" : ObjectId("5ea55182a7e81adc6a0b395c"), "FirstName" : "Robert" }
{ "_id" : ObjectId("5ea55186a7e81adc6a0b395d"), "FirstName" : "John" }
{ "_id" : ObjectId("5ea5518fa7e81adc6a0b395e"), "FirstName" : "ROBERT" }
{ "_id" : ObjectId("5ea55195a7e81adc6a0b395f"), "FirstName" : "David" }
{ "_id" : ObjectId("5ea5519ba7e81adc6a0b3960"), "FirstName" : "robert" }

以下是类似于 “like” 的查询 −

> db.demo686.find({FirstName:/Robert/i});

这将生成以下输出 −

{ "_id" : ObjectId("5ea55182a7e81adc6a0b395c"), "FirstName" : "Robert" }
{ "_id" : ObjectId("5ea5518fa7e81adc6a0b395e"), "FirstName" : "ROBERT" }
{ "_id" : ObjectId("5ea5519ba7e81adc6a0b3960"), "FirstName" : "robert" }

更新于: 2020 年 5 月 14 日

324 次浏览

启动你的职业

完成课程后获得认证

立即开始
广告