Python | Python交互之mongoDB交互详解

  • 时间:
  • 浏览:1
  • 来源:UU快3直播官网

前言

本篇为mongodb篇,蕴含实例演示,mongodb高级查询,mongodb聚合管道,python交互等内容。

举个栗子:

举个栗子:

删除

删除数据:db.集合名称.remove(,{justOne: })

操作后内容:

举个栗子:

取字典嵌套的字典中的值的以后$_id.country

原有内容:

聚合(aggregate)是基于数据出理 的聚合管道,每个文档通过一有有有另一个由多个阶段(stage)组成的管道,还可以 对每个阶段的管道进行分组、过滤等功能,全都 经过一系列的出理 ,输出相应的结果。

集合操作

插入数据(字段_id指在就更新):db.集合名称.save(document)

参数justOne:可选,不可能 设为true或1,则只删除一条绳子 ,默认fals,表示删除多条

举个栗子:

mongoDB的优势

易扩展

举个栗子:

limit:限制聚合管道返回的文档数

举个栗子:

举个栗子:

将时要排序的字段设置值:升序为1,降序为-1

mongodb与python交互

安装与导入

安装:pip install pymongo

导入模块:from pymongo import MongoClient

举个栗子:

使用$where自定义查询,这里使用的是js语法

举个栗子:

安装与启动

参数query:可选,删除的文档的条件

尾言

以上全都 关于mongodb的这名 用法,重点每段还是mongo高级查询以及聚合管道,一定要review几遍才记得住,本篇是python数据库交互的最后一篇,希望对你有所帮助。

参数multi:可选,默认是false,表示只更新找到的一条绳子 绳子 记录,值为true表示把满足条件的文档完整性更新

举个栗子:

用法:_id表示分组最好的土办法 ,_id:"$字段名"

还可以 看到单单使用update更新数据会意味原有数据被新数据替换,全都 大伙儿儿 应该搭配$set使用,指定更新对应的键值。

举个栗子:

举个栗子:

聚合使用注意事项

$group对应的字典蕴含好多个键,结果中都有好多个键

创建唯一索引:db.集合.ensureIndex({"属性":1},{"unique":true})

创建唯一索引并消除:db.集合.ensureIndex({"属性":1},{"unique":true,"dropDups":true})

举个栗子:

举个栗子:

取不同的字段的值时要使用$,$gender,$age

举个栗子:

mongodb索引

用法:db.集合.ensureIndex({属性:1}),1表示升序, -1表示降序

举个栗子:

mongodb投影

投影:在查询结果中只显示你我不会看到的数据字段内容。

大数据量,高性能

举个栗子:

分组最好的土办法 时要放到_id里边

聚合之$unwind

unwind:将文档中的某一有有有另一个数组类型字段拆分成多条, 每条蕴含数组中的一有有有另一个值

参数update:更新操作符

都都还可以并肩按照多个键进行分组

{$group:{_id:{country:"$字段",province:"$字段"}}}

举个栗子:

举个栗子:

建立联合索引:db.集合.ensureIndex({属性:1,age:1})

查看当前集合的所有索引:db.集合.getIndexes()

删除索引:db.集合.dropIndex('索引名称')

db.集合名称.aggregate({$unwind:'$字段名称'})

举个栗子:

每个文档都一有有有另一个属性,为_id,保证每个文档的唯一性

还可以 当时人去设置_id插入文档,不可能 这样 提供,这样 MongoDB为每个⽂档提供了一有有有另一个独特的_id,类型为objectID

常用管道:

聚合之$match

match:用于过滤数据,只输出符合条件的文档,功能和find类似于,全都 match是管道命令,能将结果交给后一有有有另一个管道,全都 find不还可以 。

举个栗子:

参数query:查询条件

灵活的数据模型

想显示的字段设置为1,我不会显示的字段不设置,而_id你这名 字段比较特殊,我不会他不显示时要设置_id为0。

skip:跳过指定数量的文档数,返回剩下的文档

举个栗子:

用法:db.集合名称.aggregate({管道:{表达式}})

objectID是一有有有另一个12字节的十六进制数:

前一有有有另一个字节为当前时间戳

接下来五个字节的机器ID

接下来的一有有有另一个字节中MongoDB的服务线程id

最后五个字节是简单的增量值

mongodb数据操作

新增插入数据(字段_id指在就报错):db.集合名称.insert(document)

跳过n条数据:db.集合名称.find().skip(NUMBER)

原文发布时间为:2018-08-27

本文作者:煌金的咸鱼

本文来自云栖社区企业企业合作伙伴“咸鱼普拉思”,了解相关信息还可以 关注“咸鱼普拉思”。