一.基本命令
1.连接指定mongodb
mongo ip:2717
2.显示所有数据库
show dbs
3.显示当前在哪个库
db
4. 切换库
use
二 数据库操作
use db1
db.dropDatabase()
三 集合操作
1.显式创建集合
db.createCollection("c1")
2.删除集合数据
db.c1.drop()
四 数据文档操作
1.查询
db.c1.find({条件})
db.c1.findOne() 查第一个数据
db.c1.find({条件},{显式的字段})
db.c1.find({age:{$gt:10}}) 查询年龄大于10岁的
lt 小于
gte 大于等于
lte 小于等于
ne 不等于
db.c1.find({}).count() 统计条数
db.c1.find().sort({age:-1}) 根据age排序
db.c1.find().skip(3).limit(5) 跳过3条数据查询5条数据
db.c1.find().sort({age:1}).skip(3).limit(5).count() 默认是count(0),忽视sort,skip,limit条件
db.c1.find().sort({age:1}).skip(3).limit(5).count(1) 这是正常的逻辑,返回值5
1.db.c1.insert({a:[1,2,3,4,6,7]})
$all 全匹配
2.db.c1.find({a:{$all:[1]}}) 匹配 返回这条数据
3.db.c1.find({a:{$all:[1,5]}}) 不匹配 不返回数据
$in 一个匹配即可
4.db.c1.find({a:{$in:[1]}}) 匹配
5.db.c1.find({a:{$in:[1,5]}}) 匹配
$nin 与$in相反
$or
db.c1.find({$or:[{age:1},{age:2}]}) 查询age为1和为2的
$nor 与 $or相反
$exists
db.c1.find({age:{$exists:1}}) 查询存在age字段的
db.c1.find({age:{$exists:0}}) 查询不存在age字段的
var x=db.c1.find()
x.hasNext()
x.next()
2.新增
db.c1.insert({name:"tom"})
3.删除
db.c1.remove({条件})
4.修改
db.c1.update({条件},{$set:{name:"huang"}},0,1)
$set更新属性,如果不存在则创建,不覆盖原来的属性。
0表示如果条件没有匹配不添加
1表示修改所有匹配的数据
db.c1.update({条件},{$unset:{name:"huang"}},0,1)
$unset 表示删除某个键