mongo执行逻辑表达式_Python | Python交互之mongoDB交互详解

本文详细介绍了MongoDB的安装、启动、数据库与集合操作,以及数据类型、数据操作(增删查改)、高级查询、聚合管道的使用。还探讨了Python与MongoDB的交互,包括数据的插入、查询、更新和删除。重点在于MongoDB的查询语法和聚合操作,是学习MongoDB数据库操作的重要参考资料。
摘要由CSDN通过智能技术生成

前言

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

mongoDB的优势

易扩展

大数据量,高性能

灵活的数据模型

安装与启动

安装mongodb:sudo apt-get install -y mongodb-org

安装可视化管理界面:https://robomongo.org/download

查看帮助:mongod –help

启动服务:sudo service mongod start

停止服务:sudo service mongod stop

重启服务:sudo service mongod restart

查看进程:ps ajx|grep mongod

配置文件的位置:/etc/mongod.conf

默认端口:27017

日志的位置:/var/log/mongodb/mongod.log

mongodb数据库操作

数据库操作

查看当前的数据库:db

查看所有的数据库:show dbs /show databases

切换数据库:use db_name

删除当前的数据库:db.dropDatabase()

集合操作

当集合不存在时,插入任何一条数据集合自动创建。

或者手动创建集合:db.createCollection(name,[options])

其中options:

参数capped: 默认值为false表示不设置上限,值为true表示设置上限

参数size: 当capped值为true时,需要指定此参数,表示上限大小,当文档达到上限时,会将之前的数据覆盖,单位为字节

当集合存在时:

查看集合:show collections

删除集合:db.集合名称.drop()

mongodb数据类型

Object ID:文档ID

String: 字符串,最常使用,必须是有效的UTF-8

Boolean: 存储一个布尔值,true或false

Integer: 整数可以是32位或64位,这取决于服务器

Double: 存储浮点值

Arrays: 数组或列表, 多个值存储到一个键

Object: 用于嵌入式的文档, 即一个值为一个文档

Null: 存储Null值

Timestamp: 时间戳,表示从1970-1-1到现在的总秒数

Date: 存储当前日期或时间的UNIX时间格式

注意点:

创建日期语句如下 :参数的格式为YYYY-MM-DD

new Date('2017-12-20')

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

可以自己去设置_id插入文档,如果没有提供,那么MongoDB为每个⽂档提供了一个独特的_id,类型为objectID

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

前4个字节为当前时间戳

接下来3个字节的机器ID

接下来的2个字节中MongoDB的服务进程id

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

mongodb数据操作

新增

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

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

举个栗子:

#插入文档时,如果不指定_id参数,MongoDB会为文档分配一个唯一的ObjectId

db.xianyu.insert({name:"xianyuplus",age:"3"})

#插入文档时,可以指定_id参数

db.xianyu.insert({_id:"10001",name:"xianyuplus",age:"30"})

#更新了上面_id为1001的文档

db.xianyu.save({_id:"10001",name:"xianyuplus",age:"40"})

查询

查询数据:db.集合名称.find()

举个栗子:

db.xianyu.find()

更新

更新数据:db.集合名称.update( ,,{multi: })

参数query:查询条件

参数update:更新操作符

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

举个栗子ÿ

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值