在 MongoDB 中实现 MySQL LIKE 语句应使用什么?
要获得 MySQL LIKE 语句,请在 MongoDB 中使用正则表达式。我们首先使用文档创建一个集合 −
> db.likeInMongoDBDemo.insertOne({"Name" : "Sam"}); { "acknowledged" : true, "insertedId" : ObjectId("5cd6922857806ebf1256f123") } > db.likeInMongoDBDemo.insertOne({"Name" : "John" }); { "acknowledged" : true, "insertedId" : ObjectId("5cd6923157806ebf1256f124") } > db.likeInMongoDBDemo.insertOne({"Name" : "Scott"}); { "acknowledged" : true, "insertedId" : ObjectId("5cd6924557806ebf1256f125") } > db.likeInMongoDBDemo.insertOne({"Name" : "Sean"}); { "acknowledged" : true, "insertedId" : ObjectId("5cd6924f57806ebf1256f126") } > db.likeInMongoDBDemo.insertOne({"Name" : "Samuel"}); { "acknowledged" : true, "insertedId" : ObjectId("5cd6925857806ebf1256f127") }
以下是借助 find() 方法显示集合中所有文档的查询 −
> db.likeInMongoDBDemo.find().pretty();
这将产生以下输出 −
{ "_id" : ObjectId("5cd6922857806ebf1256f123"), "Name" : "Sam" } { "_id" : ObjectId("5cd6923157806ebf1256f124"), "Name" : "John" } { "_id" : ObjectId("5cd6924557806ebf1256f125"), "Name" : "Scott" } { "_id" : ObjectId("5cd6924f57806ebf1256f126"), "Name" : "Sean" } { "_id" : ObjectId("5cd6925857806ebf1256f127"), "Name" : "Samuel" }
以下是查询正则表达式,以匹配 MongoDB 中的 MySQL LIKE 语句 −
> db.likeInMongoDBDemo.find({"Name":{$regex:"Sam"}});
这将产生以下输出 −
{ "_id" : ObjectId("5cd6922857806ebf1256f123"), "Name" : "Sam" } { "_id" : ObjectId("5cd6925857806ebf1256f127"), "Name" : "Samuel" }
广告