要获取子字符串,请在MongoDB中使用$substr。让我们创建一个包含文档的集合-
> db.demo176.insertOne({"ProductName":"PRODUCT-1"}); { "acknowledged" : true, "insertedId" : ObjectId("5e3843a09e4f06af551997ef") } > db.demo176.insertOne({"ProductName":"PRODUCT-102"}); { "acknowledged" : true, "insertedId" : ObjectId("5e3843a69e4f06af551997f0") } > db.demo176.insertOne({"ProductName":"PRODUCT-105"}); { "acknowledged" : true, "insertedId" : ObjectId("5e3843aa9e4f06af551997f1") }
在find()方法的帮助下显示集合中的所有文档-
> db.demo176.find();
这将产生以下输出-
{ "_id" : ObjectId("5e3843a09e4f06af551997ef"), "ProductName" : "PRODUCT-1" } { "_id" : ObjectId("5e3843a69e4f06af551997f0"), "ProductName" : "PRODUCT-102" } { "_id" : ObjectId("5e3843aa9e4f06af551997f1"), "ProductName" : "PRODUCT-105" }
以下是在MongoDB聚合中获取子字符串的查询-
> db.demo176.aggregate( ... [ ... { ... $project: ... { ... ... ProductName: { $substr: [ "$ProductName", 0, 7] } ... ... } ... } ... ] ...)
这将产生以下输出-
{ "_id" : ObjectId("5e3843a09e4f06af551997ef"), "ProductName" : "PRODUCT" } { "_id" : ObjectId("5e3843a69e4f06af551997f0"), "ProductName" : "PRODUCT" } { "_id" : ObjectId("5e3843aa9e4f06af551997f1"), "ProductName" : "PRODUCT" }