# 根据时间排序
db.getCollection('test').find({}).sort({ date : -1 });
# 导入导出数据
# 切换到mongo安装bin目录下
# 导出到指定的脚本
./mongoexport -h localhost:27017 -utest -p123456 -d test -c WP_GATHER -o /home/test.json # 必须输入数据库的账号和密码
# 导入到指定的实例中
./mongoimport -h localhost:27017 -d test -c test /home/test.json
# MongoDB 基本用法
* 查看条数
db.getCollection('test').find({}).count()
* 模糊查询
db.getCollection('test').find({"path":{$regex:'/20190429/'}})
* 根据时间删除数据
db.getCollection(´test´).remove({´time´:{$gte:´08:00:00´, $lt: ´09:15:00´}})
* 分页查询
.skip(0).limit(100) * skip 跳过的数据 *limit 获取的数据
# 修改文档
# 修改mongo中的数据
db.collection.update({"name1":"val1"},{"$set": {"name2":"val2"}},false,true)
#如果没有后面两个参数,则只更新一行数据。
db.collection.update(
<query>,
<update>,
{
upsert: <boolean>,
multi: <boolean>,
writeConcern: <document>
}
)
#参数说明:
query : update的查询条件,类似sql update查询内where后面的。
update : update的对象和一些更新的操作符(如$,$inc...)等,也可以理解为sql update查询内set后面的
upsert : 可选,这个参数的意思是,如果不存在update的记录,是否插入objNew,true为插入,默认是false,不插入。
multi : 可选,mongodb 默认是false,只更新找到的第一条记录,如果这个参数为true,就把按条件查出来多条记录全部更新。
writeConcern :可选,抛出异常的级别。
# 创建索引
db.getCollection('').createIndex(keys,options);
# options 配置信息
background Boolean 建索引过程会阻塞其它数据库操作,background可指定以后台方式创建索引,即增加 "background" 可选参数。 "background" 默认值为false。
unique Boolean 建立的索引是否唯一。指定为true创建唯一索引。默认值为false.
name string 索引的名称。如果未指定,MongoDB的通过连接索引的字段名和排序顺序生成一个索引名称。
dropDups Boolean 3.0+版本已废弃。在建立唯一索引时是否删除重复记录,指定 true 创建唯一索引。默认值为 false.
sparse Boolean 对文档中不存在的字段数据不启用索引;这个参数需要特别注意,如果设置为true的话,在索引字段中不会查询出不包含对应字段的文档.。默认值为 false.
expireAfterSeconds integer 指定一个以秒为单位的数值,完成 TTL设定,设定集合的生存时间。
v index version 索引的版本号。默认的索引版本取决于mongod创建索引时运行的版本。
weights document 索引权重值,数值在 1 到 99,999 之间,表示该索引相对于其他索引字段的得分权重。
default_language string 对于文本索引,该参数决定了停用词及词干和词器的规则的列表。 默认为英语
language_override string 对于文本索引,该参数指定了包含在文档中的字段名,语言覆盖默认的language,默认值为 language.
# 查看索引
db.col.getIndexes()
# explain() 查看执行的语句顺序
db.getCollection('test').find({"type":{$in:['0','2']},"date":{$regex:"^2019-09-16.*$"}}).explain()
# 删除索引
db.getCollection('test').dropIndex('test');
# 查看索引文件
db.getCollection('test').getIndexes();
db.getCollection('test').getIndexSpecs()
# 查看索引大小
db.getCollection('test').totalIndexSize()
db.currentOp()
db.killOp()
微笑的java
欢迎关注转发评论点赞沟通,让编码不在孤单。