【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 ...
随机推荐
- Unite 2017 | 从《闹闹天宫》看MOBA游戏里的网络同步技术
http://mp.weixin.qq.com/s/0v0EU79Q6rFafrh8ptlmhw 在Unite 2017 Shanghai案例分享专场,来自蓝港互动<闹闹天宫>项目组的主程 ...
- JAVA 是否会发生内存泄露(转)
原文链接: JAVA 是否会发生内存泄露 几次面试,面试官都问到了这个问题,于是搜集了答案.总结出虽然java自身有垃圾回收机制,但是很多情况下还是发生内存泄露的. java导致内存泄露的原因很明确: ...
- [leetcode]Pascal's Triangle II @ Python
原题地址:https://oj.leetcode.com/problems/pascals-triangle-ii/ 题意: Given an index k, return the kth row ...
- First Missing Positive leetcode java
题目: Given an unsorted integer array, find the first missing positive integer. For example, Given [1, ...
- Pycharm安装详细教程
今天小编给大家分享如何在本机上下载和安装Pycharm,具体的教程如下: 1.首先去Pycharm官网,或者直接输入网址:http://www.jetbrains.com/pycharm/downlo ...
- Java7,AutoClosable
Java 7的try-with-resource语法的目的是提高Java开发人员的效率,使得他们不需要在编写代码时考虑资源释放问题,大多数的这类"清理"问题是由于异常发生时清理方法 ...
- TCP/UDP常见端口
著名端口 端口号码 / 层 名称 注释 1 tcpmux TCP 端口服务多路复用 5 rje 远程作业入口 7 echo Echo 服务 9 discard 用于连接测试的空服务 11 systat ...
- express next function
nodejs 里面的next()这个函数调用的作用是什么呢? var express = require('express'); var app = express(); var myLogger = ...
- 3d打印机的软件系统组成部分
主要由计算机.应用软件.底层控制软件和接口驱动单元组成1)计算机一般采用上位机和下位机两级控制.其中上位主控机一般采用配置高.运行速度快的PC机:下位机采用嵌入式系统DSP,驱动执行机构.上位机和下位 ...
- Apache+wsgi+flask部署
flask自带的web server是开发用途,并不适用与发布,需要借助专业的web服务器. 配置的坑无数,Apache部署,403禁止,莫名其妙无法访问,500内部错误把我搞得崩溃了. 重点参考: ...