发布网友 发布时间:2022-04-30 04:14
共2个回答
懂视网 时间:2022-04-30 08:35
var cursor=db.collection1.table1.find(); cursor.forEach( function(doc) { var split="1";//分隔符 var anyCpyNo=doc.anyCpyNo+"";//主键 var cpyName=doc.cpyName+"";//企业名称 var logoUrl=doc.cpyOtherResource+""!=‘undefined‘?doc.cpyOtherResource.logoUrl:"";//图片的url var provinceCode=doc.provinceCode+"";//省份编码 var cityCode=doc.cityCode+"";//城市编码 var modifyTime=new Date(doc.modifyTime).getTime();//更新时间 var cpyNatureCode=doc.cpyNatureCode+"";//企业性质+双引号,转成字符串 var cplen=cpyNatureCode.length if(cpyNatureCode!=‘undefined‘&& cplen > 2 ){ cpyNatureCode=cpyNatureCode+"#"+cpyNatureCode.substr(0,2)+"00"; } var foundDate=new Date(doc.foundDate).getTime();//成立时间 var subIndustryCode=doc.subIndustryCode;//行业标准 if(subIndustryCode!=‘undefined‘ && subIndustryCode+"".length > 2){ subIndustryCode=subIndustryCode.substr(0,2)+"00"; } var legalPerson=doc.legalPerson;//法定代表人 if(legalPerson===‘undefined‘){ legalPerson=doc.manager; } var loc=doc.location+""//地址 if(loc===‘undefined‘){ loc=doc.businessPlace; } var regCode=doc.regCode+"";//工商注册号 var orgCode=doc.orgCode+"";//组织机构代码 var regCapital=doc.regCapital+""!=‘undefined‘?doc.regCapital.amount+""!=‘undefined‘?doc.regCapital.amount:"":"";//注册资金 var taxRegCode=doc.taxRegCode+"";//税务登记号码 var r=anyCpyNo//主键 +split+cpyName//公司名 +split+logoUrl//图片url +split+provinceCode//省份编码 +split+cityCode//城市编码 +split+modifyTime//更新时间 +split+cpyNatureCode//企业性质 +split+foundDate//成立时间 +split+subIndustryCode//二级行业标准的顶级类目 +split+legalPerson//法定代表人 +split+loc//地址 +split+regCode//工商注册号 +split+orgCode//组织机构代码 +split+regCapital//注册资金 +split+taxRegCode;//税务登记号码 r=r.replace(/ /gi, "");//Js正则去掉换行字符 r=r.replace(/ /gi, "");//Js正则去掉换行字符 r=r.replace(/undefined/gi,"");//Js正则去掉未定义的语句 print(r);//输入拼接的整行内容 } );mongo --quiet ip:host/dbname < test.js >> data
//--quiet执行静默模式,去掉系统打印信息
//ip mongo服务所在机的ip地址
//host mogo服务对外提供的访问端口
//dbname 是指要链接的数据库名字
// test.js 是我们要执行的js文件
// data 是我们输出的内容写入data文件里面
操作
SQ语法
Mongodb语法
建表
CREATE TABLE users (id MEDIUM INT NOTNULL AUTO_INCREMENT,user_idVarchar(30),ageNumber,statuschar(1),PRIMARYKEY(id))
db.users.insert({user_id:"abc123",age:55,status:"A"})
users集合可以不存在,在插入第一条时会创建,当然也可以
提前创建,执行语句:db.createCollection("users")
新增字段
ALTER TABLE users ADD join_date DATETIME
db.users.update({},{$set:{join_date:newDate()}},{multi:true})
删除字段
ALTER TABLE users DROP COLUMN join_date
db.users.update({},{$unset:{join_date:""}},{multi:true})
建立索引
CREATE INDEX idx_user_id_asc ON users(user_id)
db.users.createIndex({user_id:1})
建立索引指定排序
CREATE INDEX idx_user_id_asc_age_desc ON users(user_id,ageDESC)
db.users.createIndex({user_id:1,age:-1})
删除一个表
DROP TABLE users
db.users.drop()
插入数据
INSERTINT Ousers (user_id,age,status) VALUES ("bcd001",45,"A")
db.users.insert({user_id:"bcd001",age:45,status:"A"})
查询1
SELECT * FROM users
db.users.find()
查询2
SELECT id,user_id,status FROM users
db.users.find({},{user_id:1,status:1})
查询3
SELECT user_id,status FROM users
db.users.find({},{user_id:1,status:1,_id:0})
查询4
SELECT * FROM users WHERE status = "A"
db.users.find({status:"A"})
查询5
SELECT user_id,status FROM users WHERE status = "A"
db.users.find({status:"A"},{user_id:1,status:1,_id:0})
查询6
SELECT * FROM users WHERE status != "A"
db.users.find({status:{$ne:"A"}})
查询7
SELECT * FROM users WHERE status="A" AND age=50
db.users.find({status:"A",age:50})
查询8
SELECT * FROM users WHERE status="A" OR age = 50
db.users.find({$or:[{status:"A"},{age:50}]})
查询9
SELECT * FROM users WHERE age > 25
db.users.find( {age:{$gt:25}} )
查询10
SELECT * FROM users WHERE age < 25
db.users.find({age:{$lt:25}})
查询11
SELECT * FROM users WHERE age > 25 AND age <= 50
db.users.find({age:{$gt:25,$lte:50}})
查询12
SELECT * FROM users WHERE user_id like "%bc%"
db.users.find({user_id:/bc/})
查询13
SELECT * FROM users WHERE user_id like "bc%"
db.users.find({user_id:/^bc/})
查询14
SELECT * FROM users WHERE status="A" ORDER BY user_id ASC
db.users.find({status:"A"}).sort({user_id:1})
查询15
SELECT * FROM users WHERE status="A" ORDERBY user_id DESC
db.users.find({status:"A"}).sort({user_id:-1})
查询16
SELECT COUNT(*) FROM users
db.users.count() 或者
db.users.find().count()
查询17
SELECT COUNT (user_id) FROM users
db.users.count({user_id:{$exists:true}})
db.users.find({user_id:{$exists:true}}).count()
查询18
SELECT COUNT(*) FROM users WHERE age>30
db.users.count({age:{$gt:30}}) 或者
db.users.find({age:{$gt:30}}).count()
查询19
SELECTDISTINCT(status) FROMusers
db.users.distinct("status")
查询20
SELECT * FROM users LIMIT 1
db.users.findOne()
db.users.find().limit(1)
查询21
SELECT * FROM users LIMIT 5 , 10
db.users.find().limit(5).skip(10)
查询22
EXPLAIN SELECT * FROM users WHERE status="A"
db.users.find({status:"A"}).explain()
更新1
UPDATE users SET status="C" WHERE age>25
db.users.update({age:{$gt:25}},{$set:{status:"C"}},{multi:true})
更新2
UPDATE users SET age=age+3 WHERE status="A"
db.users.update({status:"A"},{$inc:{age:3}},{multi:true})
删除1
DELETE FROM users WHERE status="D"
db.users.remove({status:"D"})
删除2
DELETE FROM users
db.users.remove({})
版权声明:本文为博主原创文章,未经博主允许不得转载。
如何在shell下使用JavaScript和Mongodb交互?
标签:shell javascript mongodb
热心网友 时间:2022-04-30 05:43
在这些语言里面,最简单,最轻巧的就莫属mongo shell了,无须任何其他的依赖环境,只需要一个mongo客户端,就可以连接本地的