使用

  1. data$ mongo localhost:27017/jd_51job_raw updateName.js --shell

js 脚本: updateName.js

  1. var cursor = db.getCollectionNames();
  2. for(i=0;i<cursor.length;i++){
  3. if("system.indexes"==cursor[i]||"system.profile"==cursor[i]){
  4. print("Find system");
  5. continue;
  6. }
  7. else{
  8. curCol = db.getCollection(cursor[i]);
  9. print("now processing...",curCol);
  10. print(curCol.count());
  11. curCol.find().forEach(function(item){
  12. curCol.update({"_id":item._id},{"$set":{"jdJob.jobDiploma":item.jobDiploma}});
  13. // curCol.update({"_id":item._id},{"$unset":{"jobDiploma":0}});
  14. });
  15. printjson(curCol.findOne());
  16.  
  17. }
  18.  
  19. }

updateName.py

  1. #!/usr/bin/env python
  2. # coding=utf-8
  3.  
  4. from pymongo import MongoClient
  5. from bson.json_util import dumps
  6.  
  7. from multiprocessing import Pool
  8.  
  9. client = MongoClient("mongodb://localhost:xxxxx/")
  10. db = client.jd_51job_raw
  11.  
  12. cols = db.collection_names(include_system_collections=False)
  13. cols = sorted(cols)
  14.  
  15. def del_jobDiploma(colName):
  16. print "=="*20,colName
  17. col = db.get_collection(colName)
    col.update({},{"$unset":{"jobDiploma":""}},multi=True)
  18. print dumps(col.find_one(),ensure_ascii=False,indent=4)
  19. print ""
  20.  
  21. # 10个进程一起来!
    pools = Pool(10)
  22. pools.map(del_jobDiploma,cols)

mongodb 的js脚本或pymongodb脚本修改数据库的字段值的更多相关文章

  1. 一个监控oracle数据库某个字段值变化并发送邮件报警的脚本

    talk is cheap,here is the code: #!/bin/sh export ORACLE_HOME=/u01/app/oracle/product//client_1/ expo ...

  2. js间隔一段时间打印数据库中的值

    https://blog.csdn.net/qq_33599109/article/details/78417474

  3. ListView与.FindControl()方法的简单练习 #2 -- ItemUpdting事件中抓取「修改后」的值

    原文出處  http://www.dotblogs.com.tw/mis2000lab/archive/2013/06/24/listview_itemupdating_findcontrol_201 ...

  4. Web前端性能优化教程07:精简JS 移除重复脚本

    本文是Web前端性能优化系列文章中的第七篇,主要讲述内容:精简Javascript代码,以及移出重复脚本.完整教程可查看:  一.精简javascript 基础知识 精简:从javascript代码中 ...

  5. JS 动态加载脚本 执行回调_转

    关于在javascript里面加载其它的js文件的问题可能很多人都遇到过,但很多朋友可能并不知道怎么判断我们要加载的js文件是否加载完成,如果没有加载完成我们就调用文件里面的函数是不会成功的.本文讲解 ...

  6. JS 动态加载脚本 执行回调

    JS 动态加载脚本  执行回调 关于在javascript里面加载其它的js文件的问题可能很多人都遇到过,但很多朋友可能并不知道怎么判断我们要加载的js文件是否加载完成,如果没有加载完成我们就调用文件 ...

  7. SQL脚本循环修改数据库字段类型

    数据库在设计的时候也许考虑不全面,导致某些字段类型不太准确.比如设计的时候是varchar(1024),但是实际使用的时候却发现太小了,装不下,于是需要修改字段类型为ntext什么的. 我最近就遇到了 ...

  8. unity中js脚本与c#脚本互相调用

    unity中js脚本与c#脚本互相调用   test1.js function OnGUI() { if(GUI.Button(Rect(25,25,100,30),"JS Call CS& ...

  9. 以脚本方式直接执行修改密码的passwd命令

    以脚本方式直接执行修改密码的passwd命令: 参考: http://bbs.csdn.net/topics/390001865 http://bbs.chinaunix.net/thread-993 ...

随机推荐

  1. Android开源项目第一篇——个性化控件(View)篇

    本文为那些不错的Android开源项目第一篇——个性化控件(View)篇,主要介绍Android上那些不错个性化的View,包括ListView.ActionBar.Menu.ViewPager.Ga ...

  2. 解析C#中[],List,Array,ArrayList的区别及应用

    [] 是针对特定类型.固定长度的. List 是针对特定类型.任意长度的. Array 是针对任意类型.固定长度的. ArrayList 是针对任意类型.任意长度的. Array 和 ArrayLis ...

  3. div圆角和颜色渐变的设置

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  4. SQL Server取系统当前时间【转】

    getdate //获得系统当前日期 datepart //获取日期指定部分(年月日时分表) getdate()函数:取得系统当前的日期和时间.返回值为datetime类型的. 用法:getdate( ...

  5. Html.BeginForm())与Ajax.BeginForm()

     一.@using (Html.BeginForm())参数示例 1.指定表单提交方式和路径等 @using (Html.BeginForm("Index", "Home ...

  6. ASP.NET MVC3升级到ASP.NET MVC4 的方法

    ASP.NET MVC3升级 ASP.NET MVC4 的方法: 1.先去掉引用的System.Web.Mvc.dll(MVC3版本),重新引入System.Web.Mvc.dll(MVC4版本) 2 ...

  7. 网站首页title 里显示ico图标

    有两种实现方式 图片尺寸大小 第一种:直接做一个favicon.ico 图标放在项目的根目录里就行 第二种:在网页HEAD标记中添加如下代码:<HEAD> <LINK REL=”SH ...

  8. 转:在ElasticSearch之下(图解搜索的故事)

    ElasticSearch 2 (9) - 在ElasticSearch之下(图解搜索的故事) 摘要 先自上而下,后自底向上的介绍ElasticSearch的底层工作原理,试图回答以下问题: 为什么我 ...

  9. DW(三):polybase基本理论

    PolyBase is a technology that accesses and combines(整合) both non-relational and relational data, all ...

  10. erlang反编译

    Beam = code:which(MyModuleName). {ok,{_,[{abstract_code,{_,AC}}]}} = beam_lib:chunks(Beam,[abstract_ ...