在 MongoDB 聚合中获取子字符串
mongodbdatabasebig data analytics更新于 2026/1/11 13:37:17
要获取子字符串,请在 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" }

