侧边栏壁纸
博主头像
CYC的个人博客博主等级

学习使人进步

  • 累计撰写 99 篇文章
  • 累计创建 11 个标签
  • 累计收到 1 条评论

目 录CONTENT

文章目录

MongoDB多重条件修改与统计

Administrator
2023-11-15 / 0 评论 / 0 点赞 / 104 阅读 / 3713 字

MongoDB多重条件修改与统计

#根据条件批量修改
db.getCollection("T_D_UserCourseRecordSafetyTrain").update({ $and : [{CourseID : "424"}, {LessonID : { $in : ['963','964'] }}] },{$set:{CourseID : "2552"}},{multi:true})


#jsScrpit方式优雅的批量修改

var paramDuiBi=[
{"LessonID":963, "courseid":28},
{"LessonID":964, "courseid":28},
{"LessonID":965, "courseid":19},
{"LessonID":966, "courseid":19},
{"LessonID":968, "courseid":30},
{"LessonID":969, "courseid":30},
{"LessonID":970, "courseid":23},
{"LessonID":971, "courseid":23},
{"LessonID":972, "courseid":30},
{"LessonID":973, "courseid":30},
{"LessonID":974, "courseid":22},
{"LessonID":975, "courseid":22},
{"LessonID":976, "courseid":31},
{"LessonID":977, "courseid":31},
{"LessonID":978, "courseid":23},
{"LessonID":979, "courseid":23},
{"LessonID":980, "courseid":29},
{"LessonID":981, "courseid":29},
{"LessonID":982, "courseid":22},
{"LessonID":983, "courseid":22},
{"LessonID":984, "courseid":26},
{"LessonID":985, "courseid":26},
{"LessonID":986, "courseid":22},
{"LessonID":987, "courseid":22},
{"LessonID":988, "courseid":28},
{"LessonID":989, "courseid":28},
{"LessonID":990, "courseid":22},
{"LessonID":991, "courseid":22},
{"LessonID":992, "courseid":29},
{"LessonID":993, "courseid":29},
{"LessonID":994, "courseid":22},
{"LessonID":995, "courseid":22},
{"LessonID":996, "courseid":29},
{"LessonID":997, "courseid":29},
{"LessonID":998, "courseid":23},
{"LessonID":999, "courseid":23}
];



var param

 param=db.getCollection('T_D_UserCourseRecordSafetyTrain').aggregate([
    {"$match":{"LessonID" : { $in : ['963','964','965','966','968','969','970','971','972','973','974','975','976','977','978','979','980','981','982','983','984','985','986','987','988','989','990','991','992','993','994','995','996','997','998','999'] }}},    
    
		{ "$group": {
        "_id": {"UserCode":"$UserCode","LessonID":"$LessonID"},
        "Count": { "$sum": 1 },
       
		}
		},
		{$project:{"_id":0,"UserCode":"$_id.UserCode","LessonID":"$_id.LessonID","Count":"$Count"}
		}
])

var jsonstr=[];

while(param.hasNext())
{
 
		jsonstr.push(param.next())
		
}


for (var i=0;i<jsonstr.length;i++)
	{
	
	var coursenums=parseInt(jsonstr[i]["Count"]); 	
	var lessonids=parseInt(jsonstr[i]["LessonID"]);
	var UserCode=jsonstr[i]["UserCode"];
	
	
	for (var k=0;k<paramDuiBi.length;k++)
	{
	
		if(lessonids==parseInt(paramDuiBi[k]["LessonID"])&&coursenums>parseInt(paramDuiBi[k]["courseid"]))
		{
			print(UserCode+"	lessonids:"+lessonids+"	mdcount:"+coursenums+"	yuancount:"+paramDuiBi[k]["courseid"])
		}
	
	
		
	
	}
	
		
	
	}


#####样例2#######
var param

 param=db.getCollection('T_D_UserCourseRecordSafetyTrain').aggregate([
    {"$match":{"LessonID" : { $in : ['963','964','965','966','968','969','970','971','972','973','974','975','976','977','978','979','980','981','982','983','984','985','986','987','988','989','990','991','992','993','994','995','996','997','998','999'] }}},    
    
		{ "$group": {
        "_id": {"UserCode":"$UserCode","LessonID":"$LessonID","CourseID":"$CourseID"},
        "Count": { "$sum": 1 },
       
		}
		},
		{$project:{"_id":0,"UserCode":"$_id.UserCode","LessonID":"$_id.LessonID","CourseID":"$_id.CourseID","Count":"$Count"}
		}
])

var jsonstr=[];

while(param.hasNext())
{
 
		jsonstr.push(param.next())
		
}


for (var i=0;i<jsonstr.length;i++)
	{
	
	var coursenums=parseInt(jsonstr[i]["Count"]); 	
	var lessonids=parseInt(jsonstr[i]["LessonID"]);
	var coursid=jsonstr[i]["CourseID"];
	var UserCode=jsonstr[i]["UserCode"];
  if(coursenums>1)
	
		{
			print(UserCode+"	lessonids:"+lessonids+"	CourseID:"+coursid+"	coursenums:"+coursenums)
		}
	
	
		
	
	}













0

评论区