插入

import pymongo

conn = pymongo.MongoClient('mongodb://192.168.10.10:27017')
mydb = conn['myDB']
mycol = mydb['users'] # dict = {'name':'jabbok','age':'22','area':'hangzhou'}
# x = mycol.insert_one(dict)
# print(x.inserted_id) list = [
{'name':'jarry','age':'22','area':'hangzhou'},
{'name':'Eric','age':'22','area':'背景'},
{'name':'lee','age':'22','area':'hangzhou'}
]
x = mycol.insert_many(list)
print(x.inserted_ids) >
[ObjectId('5c08da8e0a3abb0a3cfbe5ba'), ObjectId('5c08da8e0a3abb0a3cfbe5bb'), ObjectId('5c08da8e0a3abb0a3cfbe5bc')] #选择操作的服务、db、集合
#插入的数据可以是字典,或者包含多个字典的列表
#如果是一个字典,就是一个文档,就用insert_one,多个就用insert_many
#insert_ids方法会返回每个插入文档的id

  

查询

查询集合中所有数据

import pymongo

conn = pymongo.MongoClient('mongodb://192.168.10.10:27017')
mydb = conn['myDB']
mycol = mydb['users'] ret = mycol.find()
for x in ret:
print(x) >
{'_id': ObjectId('5c08d8590a3abb19f4c81b53'), 'name': 'jabbok', 'age': '22', 'area': 'hangzhou'}
{'_id': ObjectId('5c08da8e0a3abb0a3cfbe5ba'), 'name': 'jarry', 'age': '22', 'area': 'hangzhou'}
{'_id': ObjectId('5c08da8e0a3abb0a3cfbe5bb'), 'name': 'Eric', 'age': '22', 'area': '背景'}
{'_id': ObjectId('5c08da8e0a3abb0a3cfbe5bc'), 'name': 'lee', 'age': '22', 'area': 'hangzhou'} #集合方法find()用于全集合查询,返回一个包含所有字典的列表

  

查询指定字段的数据

ret = mycol.find({},{'_id':0,'area':1})
for x in ret:
print(x)
>
{'area': 'hangzhou'}
{'area': 'hangzhou'}
{'area': '背景'}
{'area': 'hangzhou'}
#指定需要返回的字段,0代表不需要,一代表需要。
#把_id设为0,那么就返回设为1的字段 ret = mycol.find({},{'area':0})
for x in ret:
print(x)
>
{'_id': ObjectId('5c08d8590a3abb19f4c81b53'), 'name': 'jabbok', 'age': '22'}
{'_id': ObjectId('5c08da8e0a3abb0a3cfbe5ba'), 'name': 'jarry', 'age': '22'}
{'_id': ObjectId('5c08da8e0a3abb0a3cfbe5bb'), 'name': 'Eric', 'age': '22'}
{'_id': ObjectId('5c08da8e0a3abb0a3cfbe5bc'), 'name': 'lee', 'age': '22'}
#把某个字段设为0,则不返回这个字段

  

根据指定条件查询

myque = {'area':'hangzhou'}

ret = mycol.find(myque)
for x in ret:
print(x)
#按文档中的field-value进行匹配

  

mongodb-CURD的更多相关文章

  1. MongoDB CURD 介绍

    MongoDB是用JSON格式的field和value成对的documents存储数据,documents类似于编程语言中的key value 键值对(例如:dictionaries,hashes,m ...

  2. spring data mongodb CURD

    一.添加 Spring  Data  MongoDB 的MongoTemplate提供了两种存储文档方式,分别是save和insert方法,这两种的区别: (1)save :我们在新增文档时,如果有一 ...

  3. MongoDB: CURD操作

    >> 创建:·db.foo.insert({"bar":"baz"}) //如果文档中没有"_id"键会自动增加一个·db.fo ...

  4. mongoDB Java SDK CRUD操作例子

    Example:   package com.sdfwerwer.test; import java.net.UnknownHostException; import com.mongodb.Basi ...

  5. python 模块 - pymongo模块

    mongoDB 数据库: pymongo 操作: import pymongo # 连接mongo数据库 client = pymongo.MongoClient(host='localhost', ...

  6. Node.js Learning Paths

    Node.js Learning Paths Node.js in Action Node.js Expert situations / scenario Restful API OAuth 2.0 ...

  7. Mongodb 数据类型及Mongoose常用CURD

    前言 看完了Node.js实战,其中在数据存储部分提到了Redis.Mongodb,我自己也根据书中的介绍写了几个简单的demo,在demo的过程首先遇到的问题就是数据类型和常见的CURD写法. mo ...

  8. MongoDB的安装及CURD操作

    MongoDB的下载地址:http://www.mongodb.org/downloads MongoDB有32bit和64bit两个版本,32bit只能存放2GB数据.我们选择64bit版进行下载. ...

  9. 看门外汉如何实现:C#操作 MongoDB基本CURD的事务控制

    第一部分 基本设计 目前最新版本的C#驱动MongoDB-CSharpDriver-2.2.3,比之前的版本更新比较大,在网上很难找到这个版本的相关C#操作资料,以下都是个人自发研究.测试的,如有雷同 ...

  10. [C#] C# 与 MongoDB 的 CURD

    C# 与 MongoDB 的 CURD static void Main(string[] args) { //建立连接 var client = new MongoClient(); //建立数据库 ...

随机推荐

  1. Vue.js的动态组件模板

    组件并不总是具有相同的结构.有时需要管理许多不同的状态.异步执行此操作会很有帮助. 实例: 组件模板某些网页中用于多个位置,例如通知,注释和附件.让我们来一起看一下评论,看一下我表达的意思是什么.评论 ...

  2. 让Outlook一直保持开启

    1.将OutLook.exe注册为服务,让其一直保持开启状态 类似于TaobaoProtect.exe是由TBSecSvc服务启动的 http://stackoverflow.com/question ...

  3. .PHP生成静态html文件的方法

    1. [代码][PHP]代码     1,下面使用模版的一个方法!   <?php $fp = fopen ("templets.html","a");  ...

  4. 【C/C++】任意大于1的整数分解成素数因子乘积的形式

    // #include<stdio.h> #include<math.h> #include<malloc.h> int isprime(long n); void ...

  5. Python: PS 滤镜--旋转模糊

    本文用 Python 实现 PS 滤镜中的旋转模糊,具体的算法原理和效果可以参考之前的博客: http://blog.csdn.net/matrix_space/article/details/392 ...

  6. [YNOI 2016] 掉进兔子洞

    [题目链接] https://www.lydsy.com/JudgeOnline/problem.php?id=4939 [算法] 不难发现 , ansi = (r1 - l1 + 1) + (r2 ...

  7. [APIO 2014] 序列分割

    [题目链接] https://www.lydsy.com/JudgeOnline/problem.php?id=3675 [算法] 首先 , 我们发现将一段序列切成若干段所获得的收益与顺序无关 于是我 ...

  8. robotium

    Test run failed: Permission Denial: starting instrumentation ComponentInfo{android.support.v7.appcom ...

  9. (原创)让mongodb的secondary支持读操作

    对于replica set 中的secondary 节点默认是不可读的.在写多读少的应用中,使用Replica Sets来实现读写分离.通过在连接时指定或者在主库指定slaveOk,由Secondar ...

  10. TypeError: Unexpected keyword argument passed to optimizer: amsgrad原因及解决办法

    原因: AMSgrad只支持2017年12月11日后发行的keras版本 解决办法: pip install --upgrade keras