mongo常用sql
基本查询 db.getCollection('chdr').find({chdrnum:"test123456"})
lookup关联查询 db.getCollection ( ' chdr ' ) . aggregate ( [ { " $lookup " : { " localField" : "chdrnum" , "as" : "y" , "foreignField" : "chdrnum" , "form" : "ptrn" } }, {"$match" : {"y.transaction.validflag" : "1" , "y.transaction.createdate" : "2018-08-29","y.transaction.batctrcde" : "T642" } } ] )
批量查询 db.getCollection('chdr').find({chdrnum:{$in:["test123456","test123457","test123459"]}})
组合字段查询 db.getCollection('chdr').aggregate([{ $project : { date : { $concat : ["$createdate" , " " , " $createtime " ] } } },{ $match : {date : {$gte:"2018-11-20 00:00:00"}}}])
mongo查询关键词:
$gt : mongo >
$lt : mongo <
$gte : mongo > =
$lte : mongo < =
$match : 精确匹配
count : 统计
$sum : 统计合计
$cnttype : 取字段值
$lookup : 联合查询
$group : 分组
$project : 统计分组
as : 联合查询关键字
foreignField : 联合查询 联合字段
localField : 联合查询 联合字段
from : 联合文档关键字
$and : 且条件
$or : 或条件
$unwind 根据节点拆分
mongo 创建索引 db.collection.ensureIndex({"字段名":"1"})
mongo 查找索引db.system.indexes.find()
mongo 查询当前集合所有索引 db.collection.getIndexes()
mongo 删除指定索引 db.collection.dropIndex("")
条件查询
{$where:"this.mp!=this.sp"}
综合判断 同一个document两个值不相等且某一值不为空
find({cnttype:"",$and:[{$where:"this.renewal.btdate !=this.renewal.ptdate"},{"renewal.btdate":{$ne:""}}]})
更新节点
db.xxx.update({xxx:'xxx','xxx.xxx.xxx':'xx'},{$set:{'xxx.0.xxx.$.xxx':'xx'}},{multi:true}})