#进入数据库
use test
#创建一个集合
db.createCollection("runoob")
#查看集合
show collections
#插入文档
db.col.insert({title: 'MongoDB 教程',
description: 'MongoDB 是一个 Nosql 数据库',
by: '菜鸟教程',
url: 'http://www.runoob.com',
tags: ['mongodb', 'database', 'NoSQL'],
likes: 100
})
#查看集合
show collections
#查看文档
db.col.find()
#插入多条数据
var res = db.collection.insertMany([{"b": 3}, {'c': 4}])
#更新数据,前面是查询条件,后面是更新的内容
db.col.update({'title':'MongoDB 教程'},{$set:{'title':'MongoDB'}})
#查询,等于
db.col.find({"by":"菜鸟教程"})
#查询,大于
db.col.find({"likes":{$gt:150}})
#查询,大于
db.col.find({"likes":{$gt:150}})
#查询,AND
db.col.find({"title":"MongoDB", "by":"菜鸟教程"})
#查询,大于
db.col.find({"likes":{$gt:150}})
#查询,OR条件
db.col.find({$or:[{"title":"MongoDB", "by":"菜鸟教程"}]})
#AND和OR联合使用 'where likes>50 AND (by = '菜鸟教程' OR title = 'MongoDB 教程')'
db.col.find({"likes":{$gt:50}, $or:[{"title":"MongoDB"},{ "by":"菜鸟教程"}])
#查看集合索引
db.col.getIndexes()
#聚合 select title, count(*) from col group by title
db.col.aggregate([{$group:{_id:"$title", num:{$sum:"$likes"}}}])
db.col.aggregate([{$group:{_id:"$title", num:{$sum:1}}}])
# 两个集合左联接操作
db.col.aggregate(
[{
$lookup: {
from: "collection",
localField: "likes",
foreignField: "_id",
as: "stuffFromRight"
}
}])