mongodb-CURD
插入
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的更多相关文章
- MongoDB CURD 介绍
MongoDB是用JSON格式的field和value成对的documents存储数据,documents类似于编程语言中的key value 键值对(例如:dictionaries,hashes,m ...
- spring data mongodb CURD
一.添加 Spring Data MongoDB 的MongoTemplate提供了两种存储文档方式,分别是save和insert方法,这两种的区别: (1)save :我们在新增文档时,如果有一 ...
- MongoDB: CURD操作
>> 创建:·db.foo.insert({"bar":"baz"}) //如果文档中没有"_id"键会自动增加一个·db.fo ...
- mongoDB Java SDK CRUD操作例子
Example: package com.sdfwerwer.test; import java.net.UnknownHostException; import com.mongodb.Basi ...
- python 模块 - pymongo模块
mongoDB 数据库: pymongo 操作: import pymongo # 连接mongo数据库 client = pymongo.MongoClient(host='localhost', ...
- Node.js Learning Paths
Node.js Learning Paths Node.js in Action Node.js Expert situations / scenario Restful API OAuth 2.0 ...
- Mongodb 数据类型及Mongoose常用CURD
前言 看完了Node.js实战,其中在数据存储部分提到了Redis.Mongodb,我自己也根据书中的介绍写了几个简单的demo,在demo的过程首先遇到的问题就是数据类型和常见的CURD写法. mo ...
- MongoDB的安装及CURD操作
MongoDB的下载地址:http://www.mongodb.org/downloads MongoDB有32bit和64bit两个版本,32bit只能存放2GB数据.我们选择64bit版进行下载. ...
- 看门外汉如何实现:C#操作 MongoDB基本CURD的事务控制
第一部分 基本设计 目前最新版本的C#驱动MongoDB-CSharpDriver-2.2.3,比之前的版本更新比较大,在网上很难找到这个版本的相关C#操作资料,以下都是个人自发研究.测试的,如有雷同 ...
- [C#] C# 与 MongoDB 的 CURD
C# 与 MongoDB 的 CURD static void Main(string[] args) { //建立连接 var client = new MongoClient(); //建立数据库 ...
随机推荐
- Break、Continue、Return区别
1)break 直接跳出当前的循环,从当前循环外面开始执行,忽略循环体中任何其他语句和循环条件测试.他只能跳出一层循环,如果你的循环是嵌套循环,那么你需要按照你嵌套的层次,逐步使用break来 ...
- php设计模式之单例模式实例(设计mysqli连接数据的数据处理类)
一直在研究php的设计模式,但是没有亲历使用过,所以还是一知半解,通过几天的学习终于对php的单例设计模式稍稍的有些了解,特此写出一个数据库处理类(只涉及到简单的原理),以便自己以后方便查阅,至于其他 ...
- LightOJ1259 Goldbach`s Conjecture —— 素数表
题目链接:https://vjudge.net/problem/LightOJ-1259 1259 - Goldbach`s Conjecture PDF (English) Statistic ...
- Java 使用POI操作EXCEL及测试框架搭建、测试开发的一些想法
无论是UI自动化测试还是接口自动化测试都需要进行数据驱动,一般很常见的一种方式就是用excel来管理数据,那么就涉及到一些代码对EXCEL的操作,之前我们介绍过用CSV来处理EXCEL,但是它的功能还 ...
- 专网IP和公网IP的区别是什么
专网ip是自己网内用,公网的话就全球有效 最大区别是公网IP世界只有一个,私网IP可以重复,但是在一个局域网内不能重复 访问互联网是需要IP地址的,IP地址又分为公网IP和私网IP,访问互联网需要公网 ...
- sublime text3 3176 注册码 License
注册码 sgbteam Single User License EA7E-1153259 8891CBB9 F1513E4F 1A3405C1 A865D53F 115F202E 7B91AB2D 0 ...
- codeforces B. Roma and Changing Signs 解题报告
题目链接:http://codeforces.com/problemset/problem/262/B 题目意思:给出 n 个数和恰好一共要做的操作总数k.通过对n个数进行k次操作,每次操作可以把a[ ...
- BZOJ_1095_[ZJOI2007]Hide 捉迷藏_动态点分治+堆
BZOJ_1095_[ZJOI2007]Hide 捉迷藏_动态点分治+堆 Description 捉迷藏 Jiajia和Wind是一对恩爱的夫妻,并且他们有很多孩子.某天,Jiajia.Wind和孩子 ...
- css3 position:sticky
最近在写一个小程序,项目中遇到一个需求:页面滚动到tab切换菜单时,菜单fixed到页面顶部: 实现方法: 使用小程序的onPageScroll事件,滚动到指定位置添加fixed样式: bug1:获取 ...
- HDU-2553
N皇后问题 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submi ...