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 ...
随机推荐
- redis集群服务启动
1 启动redis服务器 redis-server.exe redis.windows.conf 需要配置config节点的bind ip 2 启动redis集群 开启redis.xx.conf 服务 ...
- Linux下使用curl查看http请求各阶段耗时
1. 准备文件模版(curl.txt) \n time_namelookup: %{time_namelookup}\n time_connect: %{time_connect}\n time_ap ...
- 构建Redis主从镜像
构建Redis的基础镜像,然后基于这个基础镜像构建主Redis镜像和从Redis镜像. 1.构建Redis基础镜像 创建redis基础镜像目录 [root@localhost mnt]# mkdir ...
- Hibernate QBC
QBC查询: Query By Criteria 使用面向对象的方式查询 和HQL单表查询相似,但不包含别名查询和具名查询 1 全表查询 Criteria ce = session.createC ...
- SpringBoot应用部署到Tomcat中无法启动问题(初识)
参考http://blog.csdn.net/asdfsfsdgdfgh/article/details/52127562 背景 最近公司在做一些内部的小型Web应用时, 为了提高开发效率决定使用Sp ...
- Windows Defender 无法启动
最近win10 企业版操作系统中,Windows Defender 无法 启动,并提示消息 : to allow this app run , contact your security admin ...
- 用Excel建模进行决策树分析
决策树(Decision Tree)在机器学习中也是比较常见的一种算法,最早的决策树算法是ID3,改善后得到了C4.5算法,进一步改进后形成了我们现在使用的C5.0算法,综合性能大幅提高. 算法核心: ...
- 【Eclipse】Eclipse 安装 SVN 插件的三种方法
最近使用Eclipse时,修改代码总是看不到变化,不知道那个文件修改了,想起了当时开发C++的时候,有相关的插件,于是乎就网搜了下,果然有Eclipse的SVN配置. 接下来,我采用了第二种方式,一起 ...
- 《机器学习实战》KNN算法实现
本系列都是参考<机器学习实战>这本书,只对学习过程一个记录,不做详细的描述! 注释:看了一段时间Ng的机器学习视频,感觉不能光看不练,现在一边练习再一边去学习理论! KNN很早就之前就看过 ...
- uiautomator2.0的配置的两种方法
方法一(使用在线下载的方式导入依赖): 1.首先创建项目工程,创建的项目的android_api版本要与测试的android_api版本一致(24就是24 ,不能26或者17去兼容) 2.然后就是将本 ...