2016-08-12 作业
2016-08-13 本文已影响0人
创新促就未来
2016-08-12作业
一、mongodb
mongodb 是一种非关系型数据库,数据以json格式的形式存储在文本文件中
1. 数据库操作
- 数据库创建: use [数据库名称] 列如:use jxc 如果jxc数据库存在则表示选择并使用当前数据库,如果jxc不存在表示创建了一个名为jxc数据库。
- 数据库删除: 在删除数据库之前先指定(选择数据库) 然后执行 db.dropDatabase()
- 显示当前服务器所有数据库 show dbs
2. 数据表操作
- 创建数据表[数据集] db.createCollection(name,[options])
参数 | 类型 | 描述 |
---|---|---|
name | string | 指定数据库[数据集]名称 |
options | Document | 指定有关内存大小和索引选项 |
- 删除数据表[数据集] db.collection.drop() 删除集合为collection的数据集
- 显示当前数据库中所有数据表 show collections
3. 数据操作
- db.collection.insert(Document):往集合中插入数据记录, Document 是一段json格式的文档,包含键与值
- db.collection.save(Document): 如果指定文档中不指定_id 则功能和insert()相同,如果指定 _id 则用现在的文档替换掉 _id 之前的文档
- db.collection.update(SELECTIOIN_CRITERIA, UPDATED_DATA): SELECTIOIN_CRITERIA 用来指定条件,UPDATE_DATA 用来指定要更新的值
- db.collection.remove(DELLETION_CRITTERIA): 用来指定要删除文档的条件
- db.collection.find():表示查找当前集合中所有记录文档
- db.collection.find(Document):用于指定where条件,以下是一些常用条件表示方法
操作 | 语法 | 例子 | 等同 |
---|---|---|---|
Equality | {<key>:<value>} | db.mycol.find({"by":"tutorials yiibai"}).pretty() | where by = 'tutorials yiibai' |
Less Than | {<key>:{$lt:<value>}} | db.mycol.find({"likes":{$lt:50}}).pretty() | where likes < 50 |
Less Than Equals | {<key>:{$lte:<value>}} | db.mycol.find({"likes":{$lte:50}}).pretty() | where likes <= 50 |
Greater Than | {<key>:{$gt:<value>}} | db.mycol.find({"likes":{$gt:50}}).pretty() | where likes > 50 |
Greater Than Equals | {<key>:{$gte:<value>}} | db.mycol.find({"likes":{$gte:50}}).pretty() | where likes >= 50 |
Not Equals | {<key>:{$ne:<value>}} | db.mycol.find({"likes":{$ne:50}}).pretty() | where likes != 50 |
- and表示方法:用多个键值即可. 如:db.collection.find({'key1':'value1','key2':'value2',...})
- or表示方法:db.collection.find({$or:[{'key1':'value1'},{'key2':'value2'},...]})
- db.collection.find({},{'key1':0,'key2':1}) 用来指定查找结果只显示的字段(键)列表 0 表示不显示,1表示显示
- db.collection.find().limit(number): 用于指定显示的文档个数
- db.collection.find().skip(number): 用于显示number个文档之后的文档
- db.collection.find().sort({'key':1/-1}):将查询出来的文档按照指定的键对应的值排序显示 -1表示倒序,1表示顺序