在MongoDB聚合操作期间用字符串文字替换值
使用MongoDB$literal设置字符串文字。首先让我们创建一个包含文档的集合-
>db.replacevaluedemo.insertOne({"StudentName":"Chris","StudentFavouriteSubject":{"TeacherName":"Bob","SubjectCode":"MySQL111"}});
{
"acknowledged" : true,
"insertedId" : ObjectId("5e0390a3f5e889d7a51994fd")
}
>db.replacevaluedemo.insertOne({"StudentName":"Mike","StudentFavouriteSubject":{"TeacherName":"David","SubjectCode":"3221Java"}});
{
"acknowledged" : true,
"insertedId" : ObjectId("5e0390b8f5e889d7a51994fe")
}以下是在find()方法的帮助下显示集合中所有文档的查询-
> db.replacevaluedemo.find().pretty();
这将产生以下输出-
{
"_id" : ObjectId("5e0390a3f5e889d7a51994fd"),
"StudentName" : "Chris",
"StudentFavouriteSubject" : {
"TeacherName" : "Bob",
"SubjectCode" : "MySQL111"
}
}
{
"_id" : ObjectId("5e0390b8f5e889d7a51994fe"),
"StudentName" : "Mike",
"StudentFavouriteSubject" : {
"TeacherName" : "David",
"SubjectCode" : "3221Java"
}
}这是将值替换为字符串文字的查询-
> db.replacevaluedemo.aggregate([{
... "$project": {
... "_id": 1,
... "StudentFavouriteSubject": {
... SubjectCode: 1,
... TeacherName: { $literal: "UNKNOWN NAME" }
... }
... }
... }]).pretty();这将产生以下输出-
{
"_id" : ObjectId("5e0390a3f5e889d7a51994fd"),
"StudentFavouriteSubject" : {
"SubjectCode" : "MySQL111",
"TeacherName" : "UNKNOWN NAME"
}
}
{
"_id" : ObjectId("5e0390b8f5e889d7a51994fe"),
"StudentFavouriteSubject" : {
"SubjectCode" : "3221Java",
"TeacherName" : "UNKNOWN NAME"
}
}热门推荐
10 对患者生日祝福语简短
11 结婚祝福语简短装备
12 周岁祝福语学生文案简短
13 订婚领证祝福语简短精辟
14 导师获奖祝福语大全简短
15 新婚购房祝福语简短精辟
16 牛年祝福语简短的爱人
17 送芒果的祝福语简短
18 送给学长毕业祝福语简短