理念:

----无创建数据库方法,使用即创建

----里面无数据,即数据库不存在

----数据库有表,表里有一条数据,则数据库存在

----表数据为JSON格式【{‘name’:’lisi’,’age’:18},{...},{...}】

>>>增

Use 数据库名------进入数据库

-----------db.表名.insertOne({})单条   插入数据并建表(自动)

------------db.表名.insertMany([{}])多条

>>>删

MongoDB 删除数据库的语法格式如下:

db.dropDatabase()

集合删除语法格式如下:

db.collection.drop()

数据删除:

db.collection.remove(条件,)

>>>改

db.test0.update( { "count" : { $gt : 1 } } , { $set : { "test2" : "OK"} } );

----db.表名.update(查找,更改)

----updateOne | updateMany

({"条件"},{"关键字":{"修改内容"}})

update修改器: $inc $set $unset $push $pull

>>>查

show dbs------查数据库

--------db ------查当前所在库

--------db.collections------查表

---------db.表名.find(条件)-----数据

>>>条件操作符

  • (>) 大于 - $gt
  • (<) 小于 - $lt
  • (>=) 大于等于 - $gte
  • (<= ) 小于等于 - $lte

// 大于100

db.col.find({"likes" : {$gt : 100}})

// 2条数据

db.表.find().limit(2)

// 排序,按title

db.表.find().sort({"title":-1})

// 设立title索引

db.表.ensureIndex({"title":1})

// 聚合函数-----以by_user字段为组,求和num_tutorial字段

db.表.aggregate([{$group : {_id : "$by_user", num_tutorial : {$sum : 1}}}])

$avg计算平均值

$min  $max

Python mongodb

>>>安装

$ python3 -m pip3 install pymongo

>>>创建一个数据库

 import pymongo
myclient = pymongo.MongoClient("mongodb://localhost:27017/")
mydb = myclient["runoobdb"]

>>>创建表

Mycol = mydb[‘test’]

所有数据库 myclient.list_database_names()

所有表 mydb.list_collection_names()

增:

 X = mycol.insert_one(mydict)
X.inserted_id
X.name
X = mycol.insert_many(mydict)
X.inserted_ids

删:

mycol.delete_one(条件)
mycol.delete_many(条件)
mycol.drop() # 删除表

改:

 myquery = { "alexa": "" }
newvalues = { "$set": { "alexa": "" } }
mycol.update_one(myquery, newvalues)

// 多

myquery = { "name": { "$regex": "^F" } }
newvalues = { "$set": { "alexa": "" } }
x = mycol.update_many(myquery, newvalues)

查:

X = mycol.find_one(范围)
myquery = { "name": { "$gt": "H" } } # 大于
mydoc = mycol.find(myquery)
myquery = { "name": { "$regex": "^R" } } # 正则表达式
mydoc = mycol.find(myquery)
myresult = mycol.find().limit(3) # 3 条
mydoc = mycol.find().sort("alexa") # 字段 alexa 按升序排序

Python-Web-数据库-mongodb的更多相关文章

  1. Python的数据库mongoDB的入门操作

    Python代码: import pymongo # 获取本地端口,激活mongo客户端 client = pymongo.MongoClient('localhost',27017) # 创建一个数 ...

  2. Python交互数据库(Mysql | Mongodb | Redis)

    数据库 Mysql Mysql MySQL是一个关系型数据库管理系统,由瑞典MySQL AB公司开发,后来被Sun公司收购,Sun公司后来又被Oracle公司收购,目前属于Oracle旗下产品 MyS ...

  3. 【简说Python WEB】数据库

    目录 [简说Python WEB]数据库 数据库表 docker安装MySQL Flask-SQLAlchemy操纵MySQL数据库 初始化 定义模型 定义关系 数据库的CRUD操作 创建表 inse ...

  4. python操作三大主流数据库(10)python操作mongodb数据库④mongodb新闻项目实战

    python操作mongodb数据库④mongodb新闻项目实战 参考文档:http://flask-mongoengine.readthedocs.io/en/latest/ 目录: [root@n ...

  5. python操作三大主流数据库(9)python操作mongodb数据库③mongodb odm模型mongoengine的使用

    python操作mongodb数据库③mongodb odm模型mongoengine的使用 文档:http://mongoengine-odm.readthedocs.io/guide/ 安装pip ...

  6. python操作三大主流数据库(7)python操作mongodb数据库①mongodb的安装和简单使用

    python操作mongodb数据库①mongodb的安装和简单使用 参考文档:中文版:http://www.mongoing.com/docs/crud.html英文版:https://docs.m ...

  7. Python全栈 MongoDB 数据库(概念、安装、创建数据)

    什么是关系型数据库?           是建立在关系数据库模型基础上的数据库,借助于集合代数等概念和方法来处理数据库中的数据,             同时也是一个被组织成一组拥有正式描述性的表格( ...

  8. python怎么连接MongoDB数据库

    Python 要连接 MongoDB 需要 MongoDB 驱动,这里我们使用 PyMongo 驱动来连接. pip 安装: pip3 install pymongo 引入库: import pymo ...

  9. python web开发——django学习(一)第一个连接mysql数据库django网站运行成功

    1.新建一个项目 2.新建一些文件夹方便管理 3.新建一个项目叫message  4.连接数据库 python web开发Django连接mysql 5.在数据库里自动生成django的表  6.运行 ...

  10. 【简说Python WEB】视图函数操作数据库

    目录 [简说Python WEB]视图函数操作数据库 系统环境:Ubuntu 18.04.1 LTS Python使用的是虚拟环境:virutalenv Python的版本:Python 3.6.9 ...

随机推荐

  1. Sql Server (MSSQLSERVER) 服务无法启动

    北京的冬天特别干燥,大清早的一同事就和服务器擦出了爱的火花,结果没想到竟导致服务器无法开机了,这可尴尬了,代码可都在服务器上托管着呢,一会还等着上线呢,必须得修啊.他们说是主板坏了,就另外找了一台电脑 ...

  2. Appium自动化测试教程-自学网-monkeyrunner简介

    monkeyrunner简介 MonkeyRunner工具是使用Jython(使用Java编程语言实现的Python)写出来的,它提供了多个API,通过monkeyrunner API 可以写一个Py ...

  3. ubuntu 停留开机界面解决方法

    1 问题 Ubuntu 启动时卡在开机界面上 2 修复 $ sudo apt-get -y reinstall ubuntu-desktop*

  4. QoS in RoCE

    QoS in RoCE 首页分类标签留言关于订阅2018-03-22 | 分类 Network  | 标签 RDMA  RoCE  ECN  PFC Overview TCP/IP协议栈满足不了现代I ...

  5. maven 安装 jar 包

    注意 jar 包路径,和版本号 mvn install:install-file -Dfile=E:\ChromeBox\box\kaptcha-2.3.2\kaptcha-2.3.2.jar -Dg ...

  6. [Go] 基础系列二:channel的关闭和广播

    利用channe关闭任务 package ch21 import ( "fmt" "testing" "time" ) //判断是否有取消任 ...

  7. [bzoj 4650][NOI 2016]优秀的拆分

    传送门 Description 如果一个字符串可以被拆分为\(AABB\) 的形式,其中$ A$和 \(B\)是任意非空字符串,则我们称该字符串的这种拆分是优秀的. 例如,对于字符串\(aabaaba ...

  8. ICEM-圆锥的一种画法(2D转3D)

    原视频下载地址:https://pan.baidu.com/s/1jIOEelo  密码: btap

  9. spring boot 之登录笔记

    在测试平台的开发中,会牵涉到登录内容,页面需要登录后才能访问,所以,对于登录的开发是很有必要的.本文记录我在系统登录的一些自己的做法. 首先对登录进行设计. 如下: 1.登录密码输入错误超过次数限制 ...

  10. lucene IndexOptions可以设置DOCS_AND_FREQS_AND_POSITIONS_AND_OFFSETS DOCS,ES里也可以设置

    org.apache.lucene.index Enum Constants  Enum Constant and Description DOCS_AND_FREQS Only documents ...