【MongoDB:】稍微复杂的操作
1:插入数据稍微复杂的形式
doc=(
{"user_id" : "ABCDBWN",
"password" :"ABCDBWN" ,
"date_of_join" :
"15/10/2010" ,
"education" :"B.C.A." ,
"profession" : "DEVELOPER",
"interest" :"MUSIC",
"community_name" :["MODERN MUSIC",
"CLASSICALMUSIC",
"WESTERN MUSIC"],
"community_moder_id" : ["MR. BBB",
"MR. JJJ",
"MRMMM"],
"community_members" : [500,
200,
1500],
"friends_id" :["MMM123",
"NNN123",
"OOO123"],
"ban_friends_id" :["BAN123",
"BAN456",
"BAN789"]
});
> db.person.insert(doc)
WriteResult({ "nInserted" : 1 })
2:利用for循环批量插入文档,上一篇博客已经说过。
3:条件查询
'>'对应'$gt',
'<'对应'$lt',
'>='对应'$gte'
'<='对应'$lte',
'!='对应'$ne',
'='对应'没有关键字'
例如:查询uid>98的数据
> db.person.find({"uid" : {$gt : 98}})
{ "_id" : ObjectId("55471dfc994c2a0fdbfa128b"), "uid" : 100, "addr" : "shanghai"
}
{ "_id" : ObjectId("55471dfc994c2a0fdbfa128c"), "uid" : 99, "addr" : "shanghai"
}
>
例如查询uid不等于99的数据量
> db.person.find({"uid":{$ne : 99}}).count()
100
还有$in,$nin,等
例如:查询uid=100并且addr="shanghai"的文档
> db.person.find({"uid" : 100,"addr":"shanghai"})
{ "_id" : ObjectId("55471dfc994c2a0fdbfa128b"), "uid" : 100, "addr" : "shanghai"
}
>
查询 uid=100 或者 addr="shanghia"的文档
db.person.find({$or:[{},{}]})
> db.person.find({$or:[{"uid":100},{"addr":"shanghai"}]}).count()
查询 addr 以 s开头的文档:
> db.person.find({"addr" : /^s/})
查询addr一i结尾的文档:
> db.person.find({"addr":/i$/})
使用where条件查询
> db.person.find({$where:function(){return this.uid==88}})
{ "_id" : ObjectId("55471dfc994c2a0fdbfa1297"), "uid" : 88, "addr" : "shanghai"
}
>
【MongoDB:】稍微复杂的操作的更多相关文章
- Node.js 中MongoDB的基本接口操作
Node.js 中MongoDB的基本接口操作 连接数据库 安装mongodb模块 导入mongodb模块 调用connect方法 文档的增删改查操作 插入文档 方法: db.collection(& ...
- MongoDB之三(高级操作 聚合、游标)
一: 聚合 常见的聚合操作跟sql server一样,有:count,distinct,group,mapReduce. <1> count count是最简单,最容易,也是最常用的聚合工 ...
- mysql数据库和mongodb数据库的相关操作以及两个数据库的区别
在docs命令中执行数据操作 MySQL数据库 先启动MySQL服务器 net start mysql 进入MySQL服务器MySQL -uroot -p(这里写你的数据库密码) (-P是从哪个端口 ...
- 数据库【mongodb篇】练习操作
本文的目标是通过大量的示例,来更好的理解如果在Mongodb中进行数据操作: 初入客户端刚利用 mongod命令进入客户端环境,此时对数据库一无所知: 举目四望,想知道现在有哪些数据库, show ...
- MongoDB入门 和nodejs操作
简介 MongoDB 开源,高性能的NoSQL数据库:支持索引.集群.复制和故障转移.各种语言的驱动程序:高伸缩性: NoSQL毕竟还处于发展阶段,也有说它的各种问题的:http://coolshel ...
- 第一篇:一天学会MongoDB数据库之Python操作
本文仅仅学习使用,转自:https://www.cnblogs.com/suoning/p/6759367.html#3682005 里面新增了如果用用Python代码进行增删改查 什么是MongoD ...
- mongodb常用语句(集合操作)
mongodb常用语句(集合操作) 查看集合帮助 db.songs.help(); 查看集合总数据量 db.songs.count(); 查看表空间大小 db.songs.dataSize(); 查看 ...
- MongoDB API和python操作
安装 下载mongodb的版本,两点注意 根据业界规则,偶数为稳定版,如1.6.X,奇数为开发版,如1.7.X 32bit的mongodb最大只能存放2G的数据,64bit就没有限制 到官网,选择合适 ...
- python数据库-mongoDB的高级查询操作(55)
一.MongoDB索引 为什么使用索引? 假设有一本书,你想看第六章第六节讲的是什么,你会怎么做,一般人肯定去看目录,找到这一节对应的页数,然后翻到这一页.这就是目录索引,帮助读者快速找到想要的章节. ...
- MongoDB学习笔记:Python 操作MongoDB
MongoDB学习笔记:Python 操作MongoDB Pymongo 安装 安装pymongopip install pymongoPyMongo是驱动程序,使python程序能够使用Mong ...
随机推荐
- Filebeat+Logstash+ElasticSearch+Kibana搭建Apache访问日志解析平台
对于ELK还不太熟悉的同学可以参考我前面的两篇文章ElasticSearch + Logstash + Kibana 搭建笔记.Log stash学习笔记(一),本文搭建了一套专门访问Apache的访 ...
- Eclipse Debug提示source not found解决方案
场景:我在引用的jar包的某个class文件的某一行代码打了个断点,当然我是已经指定了source源码包路径,否则我是查看不了class文件的源码更不用说打断点了,但是在debug模式下,却提示&qu ...
- AndroidManifest.xml文件解析(转帖)
原帖地址:http://www.cnblogs.com/pilang/archive/2011/04/20/2022932.html 一.关于AndroidManifest.xml And ...
- linux服务器开发三(网络编程)
网络基础 协议的概念 什么是协议 从应用的角度出发,协议可理解为"规则",是数据传输和数据的解释的规则. 假设,A.B双方欲传输文件.规定: 第一次,传输文件名,接收方接收到文件名 ...
- WebView JS交互 JSBridge 案例 原理 MD
Markdown版本笔记 我的GitHub首页 我的博客 我的微信 我的邮箱 MyAndroidBlogs baiqiantao baiqiantao bqt20094 baiqiantao@sina ...
- Android开发者选项 介绍
15个必知的Android开发者选项 https://www.jianshu.com/p/07b551ee260b 1.Stay awake 充电时保持屏幕唤醒,开发的时候,时不时的锁屏真是够了,开 ...
- Backbone.js 使用 Collection
在前面我们的 Backbone.js 用上了 Model, 但绝大数的情况下我们处理的都是一批的 Model 数据列表,所以需要有一个 Collection 来容纳 Model, 就像 Java 里最 ...
- 揭秘uc浏览器一
首先,看一下项目完成后的,最终效果是这样的: 一.主界面 二,书签界面 三.主界面 四.操作对话框界面 这几个界面你是否看到了uc浏览器的影子了,其实我说你也可以了,在接下来篇幅中,我将手把手叫大家完 ...
- redis信息相关集群
转: http://www.runoob.com/redis/redis-install.html //redis的安装与运维相关 http://zhou123.blog.51cto.com/4355 ...
- Tushare数据的绘图操作
1.在代码里调试学习实在费劲,可以把数据取到df里,在交互界面里慢慢调试 2.柱状图 绘制柱状图,默认情况下乱,数据太密了 改用曲线图