如何在 MongoDB 中使用 LIKE 查找匹配记录?

mongodbdatabasebig data analytics更新于 2026/1/19 6:52:17

首先,我们创建一个包含文档的集合 −

> db.likeDemo.insertOne({"Name":"John",Age:32});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5cb84984623186894665ae41")
}
> db.likeDemo.insertOne({"Name":"Chris",Age:25});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5cb84991623186894665ae42")
}
> db.likeDemo.insertOne({"Name":"Carol",Age:22});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5cb849a1623186894665ae43")
}
> db.likeDemo.insertOne({"Name":"Johnny",Age:22});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5cb849b2623186894665ae44")
}
> db.likeDemo.insertOne({"Name":"James",Age:27});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5cb849bb623186894665ae45")
}

以下是使用 find() 方法显示集合中的所有文档的查询 −

> db.likeDemo.find().pretty();

这将产生以下输出 −

{
   "_id" : ObjectId("5cb84984623186894665ae41"),
   "Name" : "John",
   "Age" : 32
}
{
   "_id" : ObjectId("5cb84991623186894665ae42"),
   "Name" : "Chris",
   "Age" : 25
}
{
   "_id" : ObjectId("5cb849a1623186894665ae43"),
   "Name" : "Carol",
   "Age" : 22
}
{
   "_id" : ObjectId("5cb849b2623186894665ae44"),
   "Name" : "Johnny",
   "Age" : 22
}
{
   "_id" : ObjectId("5cb849bb623186894665ae45"),
   "Name" : "James",
   "Age" : 27
}

以下是 MongoDB 中的 LIKE 查询,显示以 Name "Jo" 开头的记录 −

> db.likeDemo.find({Name: /^Jo/i } ).pretty();

这将产生以下输出 −

{
   "_id" : ObjectId("5cb84984623186894665ae41"),
   "Name" : "John",
   "Age" : 32
}
{
   "_id" : ObjectId("5cb849b2623186894665ae44"),
   "Name" : "Johnny",
   "Age" : 22
}

相关文章