【mongoDB】mongoDB 常用 js sql操作
2021-12-06 本文已影响0人
Bogon
1.从一张表中查询符合条件的数据,复制到另一张临时表
testSrcCollection为源表
testDestCollection_20211120为临时表
var testDB = db.getSisterDB('testSrcDB');
var result = testDB.getCollection('testSrcCollection').find({"version" : "-"});
while(result.hasNext()){
testDB.testDestCollection_20211120.insert(result.next());
- js脚本连接字符串
var testDB = connect("192.168.1.101:27027,192.168.1.102:27017,192.168.1.103:27027/test?replicaSet=xxx").getSisterDB("test");
userDB.auth("usernmae", "passwd");
var t_user = userDB.getCollection("T_USER");
var testDB = connect("user:passwd@192.168.1.101:27027,192.168.1.102:27017,192.168.1.103:27027/test?replicaSet=xxx&authSource=test");
var t_user = userDB.getCollection("T_USER");
var ts=userDB.getCollectionNames();

人员状态:
UNVERIFIED:未激活
INEFFECTIVE:禁用
ACTIVE:激活
SUSPENDED:离职
$ mongo --host xx.xx.xx.xx --port 27017 -u "username" -p "XXX" --authenticationDatabase admin
PRIMARY> use testDB
PRIMARY> db.T_testCol.find({"eid": "123456", "mobile": "13510269555"}).pretty()
# 修改前先备份表:
$ mongoexport --host xx.xx.xx.xx --port 27017 -u "username" -p "XXX" --authenticationDatabase=admin -d testDB -c T_testCol -o T_testCol.json
$ mongoexport --host xx.xx.xx.xx --port 27017 -u "username" -p "XXX" --authenticationDatabase=admin -d testDB -c T_testCol -q '{eid: "123456"}' -o T_testCol-123456.json
$ mongo --host xx.xx.xx.xx --port 27017 -u "username" -p "XXX" --authenticationDatabase admin
> use testDB
将eid为123456的这个圈的所有人设置为离职状态,默认只修改匹配到的第一条
> db.T_testCol.update({eid: "123456"}, {"$set": {"status": "SUSPENDED"}})
WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })
将eid为123456的这个圈的所有人设置为离职状态,修改匹配到所有
> db.T_testCol.update({eid:"123456"}, {"$set": {"status":"SUSPENDED"}},{multi:true})
WriteResult({ "nMatched" : 6481, "nUpserted" : 0, "nModified" : 6478 })
将eid为123456的这个圈的指定人员状态设置为在职,默认只修改匹配到的第一条
db.T_testCol.update({eid:"123456", "mobile" : "13510269555"},{$set:{'status':'ACTIVE'}})
参考
MongoDB Shell Script操作备忘
https://blog.inhere.top/mongodb-shell-scriptcao-zuo-bei-wang/
为 mongo Shell 编写脚本
https://www.docs4dev.com/docs/zh/mongodb/v3.6/reference/tutorial-write-scripts-for-the-mongo-shell.html
为MongoDB编写Js维护脚本
https://zhangshenjia.com/it/mongodb-js
mongo Shell 编写脚本
http://runoops.com/mongodb-shell-script.html
MongoDB 运行 js 脚本
https://chengchaos.github.io/2020/06/12/mongo-run-script.html
关于mongodb:mongo脚本中的文件写入操作?
https://www.codenong.com/8971151