Mongodb数据库常用

来源:互联网 发布:黄金原油看盘软件 编辑:程序博客网 时间:2024/06/02 02:14

MongoDB的默认数据库为“db”,该数据库存储在data目录中


“show dbs”显示所有数据库列表

“db”显示当前数据库对象或者集合

“use dbname”连接一个指定的数据库


文档即行row,是一组的键值对(BSON) 


mongod 是数据库的服务端

mongo是数据库的客户端



连接数据库:

①首先启动客户端./mongo

mongodb://[username:password@]  host1   [:port1]  [/database]  [options]


例子:使用用户名和密码连接登录到指定的数据库,端口不填默认为27017

mongodb://admin:132456@localhost/test


创建数据库:

use dbnames

删除数据库:

首先切换到数据库:use dbnames

删除:db.dropDatabase()

删除集合(表格)

首先切换到数据库:use dbnames

db.collectionnames.drop()



查看所有表格:

show tables


插入文档:

db.collectionnames.insert(document)

例如:

db.col.insert({title:"MongoDB",by:"guojing"})



查看文档:

db.collectionnames.find(query).pretty()

db.collectionnames.findOne()


AND条件:

db.collectionname.find({key1:value1,key:value2}).pretty()

查询条件中BSON结构{}里面用“,”分开查询条件相当于条件and


OR条件:

db.collectionname.find(

{

$or:[{key:value1},{key2:vaule2}]

}

)


限制显示的数据数量:

db.collectionname.find().limit(number)


数据排序:

db.collectionname.find().sort({key:1})  1为升序,-1为降序




更新文档:

db.collectionname.update(

<query>,(类似于sql update查询内where后面的)

<update>(类似于sql update查询内set后面的)

)



删除文档:

db.collectionname.remove(

<query>,(删除文档的条件)

<justone>(值为ture或1,则只删除一个文档)

)


建立索引:

db.collectionname.ensureIndex({key:1},{unique:true}) key为你要创建的索引字段,1为升序创建索引,-1为降序创建索引,参数指定为唯一索引

也可以使用多个字段创建索引

db.collectionname.ensureIndex({"title":1,"description":-1})



聚合用法:

db.collectionname.aggregate(OPERATION)




管道:


db.collectionname.aggregate([

{$match:{score:{$gt:70,$lte:90}}},

{$group:{_id:null,cout:{$sum:1}}}

]);

$match用于获取大于70小于或者等于90的记录,然后将符合条件的记录送到下一个阶段$group管道操作符进行处理