在 MongoDB 中如何将两个字段的字符串连接到第三个字段?
mongodbdatabasebig data analytics更新于 2026/1/17 16:07:17
要将两个字段的字符串连接到第三个字段,可以使用以下语法
db.yourCollectionName.aggregate(
[
{ $project: { "yourNewFieldName": { $concat: [ "$yourFieldName1", " yourDellimiterValue ", "$yourFieldName2" ] } } }
]
);
首先创建一个包含文档的集合
>db.concatenateStringsDemo.insertOne({"StudentFirstName":"John","StudentLastName":"Doe"});
{
"acknowledged" : true,
"insertedId" : ObjectId("5c9bb7362d66697741252444")
}
>db.concatenateStringsDemo.insertOne({"StudentFirstName":"John","StudentLastName":"Smith"});
{
"acknowledged" : true,
"insertedId" : ObjectId("5c9bb7402d66697741252445")
}
>db.concatenateStringsDemo.insertOne({"StudentFirstName":"Carol","StudentLastName":"Taylor"});
{
"acknowledged" : true,
"insertedId" : ObjectId("5c9bb74c2d66697741252446")
}
>db.concatenateStringsDemo.insertOne({"StudentFirstName":"David","StudentLastName":"Miller"});
{
"acknowledged" : true,
"insertedId" : ObjectId("5c9bb7752d66697741252447")
}
>db.concatenateStringsDemo.insertOne({"StudentFirstName":"James","StudentLastName":"Williams"});
{
"acknowledged" : true,
"insertedId" : ObjectId("5c9bb7862d66697741252448")
}
以下是借助 find() 方法显示集合中的所有文档的查询
> db.concatenateStringsDemo.find().pretty();
这将产生以下输出 −
{
"_id" : ObjectId("5c9bb7362d66697741252444"),
"StudentFirstName" : "John",
"StudentLastName" : "Doe"
}
{
"_id" : ObjectId("5c9bb7402d66697741252445"),
"StudentFirstName" : "John",
"StudentLastName" : "Smith"
}
{
"_id" : ObjectId("5c9bb74c2d66697741252446"),
"StudentFirstName" : "Carol",
"StudentLastName" : "Taylor"
}
{
"_id" : ObjectId("5c9bb7752d66697741252447"),
"StudentFirstName" : "David",
"StudentLastName" : "Miller"
}
{
"_id" : ObjectId("5c9bb7862d66697741252448"),
"StudentFirstName" : "James",
"StudentLastName" : "Williams"
}
以下查询用于将两个字段中的字符串连接到第三个字段。我们将字段"StudentFirstName"和"StudentLastName"连接到第三个字段。
> db.concatenateStringsDemo.aggregate(
... [
... { $project: { "StudentFullName": { $concat: [ "$StudentFirstName", " / ", "$StudentLastName" ] } } }
... ]
... );
这将产生以下输出 −
{ "_id" : ObjectId("5c9bb7362d66697741252444"), "StudentFullName" : "John / Doe" }
{ "_id" : ObjectId("5c9bb7402d66697741252445"), "StudentFullName" : "John / Smith" }
{ "_id" : ObjectId("5c9bb74c2d66697741252446"), "StudentFullName" : "Carol / Taylor" }
{ "_id" : ObjectId("5c9bb7752d66697741252447"), "StudentFullName" : "David / Miller" }
{ "_id" : ObjectId("5c9bb7862d66697741252448"), "StudentFullName" : "James / Williams" }

