mongodb学习-练习实例
C:\Users\issuser>mongo
MongoDB shell version: 2.4.6
connecting to: test
> db.user.find()
{ "_id" : ObjectId("5875f6407c149d4b6063e99d"), "name" : "jack", "password" : "12345", "age" : 20, "address" : { "province" : "anhui", "city" : "hefei" }, "favourite" : [ "apple", "banana" ] }
{ "_id" : ObjectId("5875f6e57c149d4b6063e99e"), "name" : "joe", "password" : "12345", "age" : 25, "address" : { "province" : "jiansu", "city" : "nanjing" }, "favourite" : [ "money", "mm" ] }
> db.user.find({"age":{$gt:22}})
{ "_id" : ObjectId("5875f6e57c149d4b6063e99e"), "name" : "joe", "password" : "12345", "age" : 25, "address" : { "province" : "jiansu", "city" : "nanjing" }, "favourite" : [ "money", "mm" ] }
> db.user.find({"age":{$lt:22}})
{ "_id" : ObjectId("5875f6407c149d4b6063e99d"), "name" : "jack", "password" : "12345", "age" : 20, "address" : { "province" : "anhui", "city" : "hefei" }, "favourite" : [ "apple", "banana" ] }
> db.user.find({"age":{$ne:22}})
{ "_id" : ObjectId("5875f6407c149d4b6063e99d"), "name" : "jack", "password" : "12345", "age" : 20, "address" : { "province" : "anhui", "city" : "hefei" }, "favourite" : [ "apple", "banana" ] }
{ "_id" : ObjectId("5875f6e57c149d4b6063e99e"), "name" : "joe", "password" : "12345", "age" : 25, "address" : { "province" : "jiansu", "city" : "nanjing" }, "favourite" : [ "money", "mm" ] }
> db.user.find({"age":20})
{ "_id" : ObjectId("5875f6407c149d4b6063e99d"), "name" : "jack", "password" : "12345", "age" : 20, "address" : { "province" : "anhui", "city" : "hefei" }, "favourite" : [ "apple", "banana" ] }
> db.user.find({"name":"jack","address.province":"anhui"})
{ "_id" : ObjectId("5875f6407c149d4b6063e99d"), "name" : "jack", "password" : "12345", "age" : 20, "address" : { "province" : "anhui", "city" : "hefei" }, "favourite" : [ "apple", "banana" ] }
> db.user.find({$or:[{"address.province":"anhui"},{"address.province":"anhui"},{"address.province":"guangdong"}]})
{ "_id" : ObjectId("5875f6407c149d4b6063e99d"), "name" : "jack", "password" : "12345", "age" : 20, "address" : { "province" : "anhui", "city" : "hefei" }, "favourite" : [ "apple", "banana" ] }
> db.user.find()
{ "_id" : ObjectId("5875f6407c149d4b6063e99d"), "name" : "jack", "password" : "12345", "age" : 20, "address" : { "province" : "anhui", "city" : "hefei" }, "favourite" : [ "apple", "banana" ] }
{ "_id" : ObjectId("5875f6e57c149d4b6063e99e"), "name" : "joe", "password" : "12345", "age" : 25, "address" : { "province" : "jiansu", "city" : "nanjing" }, "favourite" : [ "money", "mm" ] }
> db.user.find({$or:[{"address.province":"anhui"},{"address.province":"anhui"},{"address.province":"jiansu"}]})
{ "_id" : ObjectId("5875f6407c149d4b6063e99d"), "name" : "jack", "password" : "12345", "age" : 20, "address" : { "province" : "anhui", "city" : "hefei" }, "favourite" : [ "apple", "banana" ] }
{ "_id" : ObjectId("5875f6e57c149d4b6063e99e"), "name" : "joe", "password" : "12345", "age" : 25, "address" : { "province" : "jiansu", "city" : "nanjing" }, "favourite" : [ "money", "mm" ] }
> db.user.find({"address.province":{$in:["anhui","jiansu"]}})
{ "_id" : ObjectId("5875f6407c149d4b6063e99d"), "name" : "jack", "password" : "12345", "age" : 20, "address" : { "province" : "anhui", "city" : "hefei" }, "favourite" : [ "apple", "banana" ] }
{ "_id" : ObjectId("5875f6e57c149d4b6063e99e"), "name" : "joe", "password" : "12345", "age" : 25, "address" : { "province" : "jiansu", "city" : "nanjing" }, "favourite" : [ "money", "mm" ] }
> db.user.find({"address.province":{$nin:{"anhui","jiansu"}}})
Thu Jan 12 10:50:04.387 SyntaxError: Unexpected token ,
> db.user.find({"address.province":{$nin:{"anhui"}}})
Thu Jan 12 10:51:03.163 SyntaxError: Unexpected token }
> db.user.find({"address.province":{$nin:["anhui"]}})
{ "_id" : ObjectId("5875f6e57c149d4b6063e99e"), "name" : "joe", "password" : "12345", "age" : 25, "address" : { "province" : "jiansu", "city" : "nanjing" }, "favourite" : [ "money", "mm" ] }
> db.user.find({"address.province":{$nin:["anhui","jiansu"]}})
> db.user.find({"name":/^j/,"name":/e$})
Thu Jan 12 10:54:24.025 SyntaxError: Invalid regular expression: missing /
> db.user.find({"name":/^j/,"name":/e$/})
{ "_id" : ObjectId("5875f6e57c149d4b6063e99e"), "name" : "joe", "password" : "12345", "age" : 25, "address" : { "province" : "jiansu", "city" : "nanjing" }, "favourite" : [ "money", "mm" ] }
> db.user.find({$where:function(){return this.name=='jack'}})
{ "_id" : ObjectId("5875f6407c149d4b6063e99d"), "name" : "jack", "password" : "12345", "age" : 20, "address" : { "province" : "anhui", "city" : "hefei" }, "favourite" : [ "apple", "banana" ] }
> db.user.find({$where:function(){return this.name=='joe'}})
{ "_id" : ObjectId("5875f6e57c149d4b6063e99e"), "name" : "joe", "password" : "12345", "age" : 25, "address" : { "province" : "jiansu", "city" : "nanjing" }, "favourite" : [ "money", "mm" ] }
> var model=db.user.find({"name":"jack"})
> model.age=30
30
> db.user.update({"name":"jack"},model)
Thu Jan 12 11:00:09.924 can't save a DBQuery object at src/mongo/shell/collection.js:134
> var model=db.user.findOne({"name":"jack"})
> model.age=30
30
> db.user.update({"name":"jack"},model)
> db.user.find()
{ "_id" : ObjectId("5875f6407c149d4b6063e99d"), "name" : "jack", "password" : "12345", "age" : 30, "address" : { "province" : "anhui", "city" : "hefei" }, "favourite" : [ "apple", "banana" ] }
{ "_id" : ObjectId("5875f6e57c149d4b6063e99e"), "name" : "joe", "password" : "12345", "age" : 25, "address" : { "province" : "jiansu", "city" : "nanjing" }, "favourite" : [ "money", "mm" ] }
> db.user.update({"name","jack"},{$inc:{"age":30}})
Thu Jan 12 11:08:20.891 SyntaxError: Unexpected token ,
> db.user.update({"name":"jack"},{$inc:{"age":30}})
> db.user.find()
{ "_id" : ObjectId("5875f6407c149d4b6063e99d"), "name" : "jack", "password" : "12345", "age" : 60, "address" : { "province" : "anhui", "city" : "hefei" }, "favourite" : [ "apple", "banana" ] }
{ "_id" : ObjectId("5875f6e57c149d4b6063e99e"), "name" : "joe", "password" : "12345", "age" : 25, "address" : { "province" : "jiansu", "city" : "nanjing" }, "favourite" : [ "money", "mm" ] }
> db.user.update({"name":"jack"},{$set:{"age":10}})
> db.user.find()
{ "_id" : ObjectId("5875f6407c149d4b6063e99d"), "name" : "jack", "password" : "12345", "age" : 10, "address" : { "province" : "anhui", "city" : "hefei" }, "favourite" : [ "apple", "banana" ] }
{ "_id" : ObjectId("5875f6e57c149d4b6063e99e"), "name" : "joe", "password" : "12345", "age" : 25, "address" : { "province" : "jiansu", "city" : "nanjing" }, "favourite" : [ "money", "mm" ] }
> db.user.update({"name":"jackson"},{$inc{"age":1},true})
Thu Jan 12 11:15:18.691 SyntaxError: Unexpected token {
> db.user.update({"name":"jackson"},{$inc{"age":1}},true)
Thu Jan 12 11:15:36.786 SyntaxError: Unexpected token {
> db.user.update({"name":"jackson"},{$inc:{"age":1}},true)
> db.user.find()
{ "_id" : ObjectId("5875f6407c149d4b6063e99d"), "name" : "jack", "password" : "12345", "age" : 10, "address" : { "province" : "anhui", "city" : "hefei" }, "favourite" : [ "apple", "banana" ] }
{ "_id" : ObjectId("5875f6e57c149d4b6063e99e"), "name" : "joe", "password" : "12345", "age" : 25, "address" : { "province" : "jiansu", "city" : "nanjing" }, "favourite" : [ "money", "mm" ] }
{ "_id" : ObjectId("5876f4fc01437187c9e8894b"), "age" : 1, "name" : "jackson" }
> db.user.update({"name":"jack"},{$set:{"age":56}},true,true)
> db.user.find()
{ "_id" : ObjectId("5875f6407c149d4b6063e99d"), "name" : "jack", "password" : "12345", "age" : 56, "address" : { "province" : "anhui", "city" : "hefei" }, "favourite" : [ "apple", "banana" ] }
{ "_id" : ObjectId("5875f6e57c149d4b6063e99e"), "name" : "joe", "password" : "12345", "age" : 25, "address" : { "province" : "jiansu", "city" : "nanjing" }, "favourite" : [ "money", "mm" ] }
{ "_id" : ObjectId("5876f4fc01437187c9e8894b"), "age" : 1, "name" : "jackson" }
> db.user.update({"name":"/^j/"},{$set:{"age":36}},true,true)
> db.user.find()
{ "_id" : ObjectId("5875f6407c149d4b6063e99d"), "name" : "jack", "password" : "12345", "age" : 56, "address" : { "province" : "anhui", "city" : "hefei" }, "favourite" : [ "apple", "banana" ] }
{ "_id" : ObjectId("5875f6e57c149d4b6063e99e"), "name" : "joe", "password" : "12345", "age" : 25, "address" : { "province" : "jiansu", "city" : "nanjing" }, "favourite" : [ "money", "mm" ] }
{ "_id" : ObjectId("5876f4fc01437187c9e8894b"), "age" : 1, "name" : "jackson" }
{ "_id" : ObjectId("5876f64001437187c9e8894c"), "age" : 36, "name" : "/^j/" }
> db.user.update({"name":/^j/},{$set:{"age":36}},true,true)
> db.user.find()
{ "_id" : ObjectId("5875f6407c149d4b6063e99d"), "name" : "jack", "password" : "12345", "age" : 36, "address" : { "province" : "anhui", "city" : "hefei" }, "favourite" : [ "apple", "banana" ] }
{ "_id" : ObjectId("5875f6e57c149d4b6063e99e"), "name" : "joe", "password" : "12345", "age" : 36, "address" : { "province" : "jiansu", "city" : "nanjing" }, "favourite" : [ "money", "mm" ] }
{ "_id" : ObjectId("5876f4fc01437187c9e8894b"), "age" : 36, "name" : "jackson" }
{ "_id" : ObjectId("5876f64001437187c9e8894c"), "age" : 36, "name" : "/^j/" }
> db.user.remove({"name":"/^j/"}))
> db.user.find()
{ "_id" : ObjectId("5875f6407c149d4b6063e99d"), "name" : "jack", "password" : "12345", "age" : 36, "address" : { "province" : "anhui", "city" : "hefei" }, "favourite" : [ "apple", "banana" ] }
{ "_id" : ObjectId("5875f6e57c149d4b6063e99e"), "name" : "joe", "password" : "12345", "age" : 36, "address" : { "province" : "jiansu", "city" : "nanjing" }, "favourite" : [ "money", "mm" ] }
{ "_id" : ObjectId("5876f4fc01437187c9e8894b"), "age" : 36, "name" : "jackson" }
> db.person.find()
{ "_id" : ObjectId("5875f3547c149d4b6063e99b"), "name" : "jack", "age" : 20 }
> db.person.insert({"name":"chun1","age":28})
> db.person.insert({"name":"hh2","age":27})
> db.person.insert({"name":"yudie",age:5})
> db.person.insert({"name":"caiyi",age:3})
> db.person.find()
{ "_id" : ObjectId("5875f3547c149d4b6063e99b"), "name" : "jack", "age" : 20 }
{ "_id" : ObjectId("5876fa7cd039ee6fe7076301"), "name" : "chun1", "age" : 28 }
{ "_id" : ObjectId("5876fa90d039ee6fe7076302"), "name" : "hh2", "age" : 27 }
{ "_id" : ObjectId("5876faa3d039ee6fe7076303"), "name" : "yudie", "age" : 5 }
{ "_id" : ObjectId("5876fab8d039ee6fe7076304"), "name" : "caiyi", "age" : 3 }
> db.person.count()
5
> db.person.count({"name":"jack"})
1
> db.person.distinct("age")
[ 20, 28, 27, 5, 3 ]
> db.person.update({"name":"hh2"},{"age":28})
> db.person.distinct("age")
[ 20, 28, 5, 3 ]
> db.person.count({"age":28})
2
> db.person.group({})
Thu Jan 12 13:54:05.987 group command failed: { "ok" : 0, "errmsg" : "$reduce has to be set" } at src/mongo/shell/db.js:655
> db.person.group({})
Thu Jan 12 13:54:17.592 group command failed: { "ok" : 0, "errmsg" : "$reduce has to be set" } at src/mongo/shell/db.js:655
> db.person.group({//})
...
...
> db.persong.group({//
... "key":{"age":true},//
... "initial":{"person":[]},//
... "$reduce":function(cur,prev){prev.person.push(cur.name);}})
[ ]
> db.person.find()
{ "_id" : ObjectId("5875f3547c149d4b6063e99b"), "name" : "jack", "age" : 20 }
{ "_id" : ObjectId("5876fa7cd039ee6fe7076301"), "name" : "chun1", "age" : 28 }
{ "_id" : ObjectId("5876fa90d039ee6fe7076302"), "age" : 28 }
{ "_id" : ObjectId("5876faa3d039ee6fe7076303"), "name" : "yudie", "age" : 5 }
{ "_id" : ObjectId("5876fab8d039ee6fe7076304"), "name" : "caiyi", "age" : 3 }
> db.person.group({// "key":{"age":true},// "initial":{"person":[]},// "$reduce":function(cur,prev){prev.person.push(cur.name);}})
...
...
>
> db.person.group({"key":{"age":true},"initial":{"person":[]},"$reduce":function(cur,prev){prev.person.push(cur.name);}})
[
{
"age" : 20,
"person" : [
"jack"
]
},
{
"age" : 28,
"person" : [
"chun1",
null
]
},
{
"age" : 5,
"person" : [
"yudie"
]
},
{
"age" : 3,
"person" : [
"caiyi"
]
}
]
> db.person.group({"key":true},"initial":{"person":[]},"reduce":function(doc,out){out.person.push(doc.name);},"finalize":function(out){out.count=out.persong.length;},"condition":{"age":{$lt:25}}})
Thu Jan 12 15:33:53.393 SyntaxError: Unexpected token :
> db.person.group({"key":true},"initial":{"person":[]},"reduce":function(doc,out){out.person.push(doc.name);},"finalize":function(out){out.count=out.persong.length;},"condition":{"age":{$lt:25}})
Thu Jan 12 15:33:58.400 SyntaxError: Unexpected token :
> db.person.group({"key":{"age":true},"initial":{"person":[]},"reduce":function(doc,out){out.person.push(doc.name);},"finalize":function(out){out.count=out.persong.length;},"condition":{"age":{$lt:25}}})
Thu Jan 12 15:38:50.740 group command failed: {
"errmsg" : "exception: TypeError: Cannot read property 'length' of undefined at $group finalize define",
"code" : 16722,
"ok" : 0
} at src/mongo/shell/db.js:655
> db.person.group({"key":{"age":true},"initial":{"person":[]},"reduce":function(doc,out){out.person.push(doc.name);},"finalize":function(out){out.count=out.person.length;},"condition":{"age":{$lt:25}}})
[
{
"age" : 20,
"person" : [
"jack"
],
"count" : 1
},
{
"age" : 5,
"person" : [
"yudie"
],
"count" : 1
},
{
"age" : 3,
"person" : [
"caiyi"
],
"count" : 1
}
]
>
mongodb学习-练习实例的更多相关文章
- MongoDB学习:(一)MongoDB安装
MongoDB学习:(一)MongoDB安装 MongoDB介绍: 直接百科了: MongoDB安装: 1:下载安装: MongoDB安装:https://www.mongodb.com/do ...
- [转载]MongoDB学习(二):数据类型和基本概念
数据类型 基本数据类型 MongoDB的文件存储格式为BSON,同JSON一样支持往其它文档对象和数组中再插入文档对象和数组,同时扩展了JSON的数据类型.与数据库打交道的那些应用.例如,JSON没有 ...
- MongoDB学习2
MongoDB学习(翻译2) C#驱动之LINQ教程 介绍 本教程涵盖了1.8发布版本对linq查询的支持. 开始本教程之前,你应该至少阅读下C#驱动教程关于C#驱动的介绍 快速开始 首先,添加下面命 ...
- mongoDB 学习笔记纯干货(mongoose、增删改查、聚合、索引、连接、备份与恢复、监控等等)
最后更新时间:2017-07-13 11:10:49 原始文章链接:http://www.lovebxm.com/2017/07/13/mongodb_primer/ MongoDB - 简介 官网: ...
- (转)MongoDB学习
(二期)25.分布式文件存储数据库MongoDB [课程25]mongod...命令.xmind96.9KB [课程25]MongoD...概念.xmind0.5MB [课程25]MongoDB简介. ...
- MongoDB学习笔记(四)--索引 && 性能优化
索引 基础索引 ...
- MongoDB学习——持续更新
參考MongoDB权威指南,学习阶段.大家多多交流问题.持续更新本文 MongoDB的长处 MongoDB具有丰富的数据模型,是面向文档的数据库. easy扩展.能够在多台server之间切割数据. ...
- MongoDB学习笔记(2):数据库操作及CURD初步
MongoDB学习笔记(2):数据库操作及CURD 数据库操作 创建数据库 首先MongoDB中数据库的创建和数据库的切换都是使用命令,USE DATABASE,如果要切换的数据库不存在则会进行创建, ...
- MongoDB学习笔记(1):MongoDB的安装和说明
MongoDB学习笔记(1):MongoDB的安装和说明 快速开始 下载地址 官网下载: https://www.mongodb.com/download-center?jmp=nav#communi ...
随机推荐
- SQL优化系列——查询优化器
大多数查询优化器将查询计划用“计划节点”树表示.计划节点封装执行查询所需的单个操作.节点被布置为树,中间结果从树的底部流向顶部.每个节点具有零个或多个子节点 - 这些子节点是输出作为父节点输入的节点. ...
- 学习笔记之Machine Learning by Andrew Ng | Stanford University | Coursera
Machine Learning by Andrew Ng | Stanford University | Coursera https://www.coursera.org/learn/machin ...
- sleep function error ("Advanced Programming in the UNIX Environment" Third Edition No.374)
测试证明代码: #include <unistd.h> #include <fcntl.h> #include <time.h> #include "ap ...
- fragment--的生命周期
官网帮助文档链接: http://developer.Android.com/guide/components/fragments.html 主要看两张图,和跑代码 1,Fragment的生命周: 2 ...
- js基本方法
Math.random() 日期时间函数(需要用变量调用):var b = new Date(); //获取当前时间b.getTime() //获取时间戳b.getFullYear() //获取年份b ...
- 网络基础和python(二)
一,五层协议 应用层 端口 传输层 tcp\udp 网络层 ipv4\6 数据链路层 ethernet 物理层 mac 二:什么是变量? 变量:核心在于变和量儿字,变->变 ...
- Winfrom 设置Panel添加滚动条
AutoScroll是自动滚动的属性. 把AutoScroll设置为True;
- CS229 6.17 Neurons Networks convolutional neural network(cnn)
之前所讲的图像处理都是小 patchs ,比如28*28或者36*36之类,考虑如下情形,对于一副1000*1000的图像,即106,当隐层也有106节点时,那么W(1)的数量将达到1012级别,为了 ...
- Django之Models进阶操作(字段属性)
字段属性详细介绍 一.字段 AutoField(Field) - int自增列,必须填入参数 primary_key=True BigAutoField(AutoField) - bigint自增列, ...
- Docker 核心技术与实现原理
提到虚拟化技术,我们首先想到的一定是 Docker,经过四年的快速发展 Docker 已经成为了很多公司的标配,也不再是一个只能在开发阶段使用的玩具了.作为在生产环境中广泛应用的产品,Docker 有 ...