Mongodb

Mongodb概述

知识点一:Mongodb的常用操作

Mongodb概述

端口号27017

bash 复制代码
mongosh #进入mongo
exit #退出

#显示数据库
show dbs
#显示当前数据库
db
#进入数据库创建数据库
use jianqidatabase
#创建集合
db.createCollection("students")
#查看集合
show collections
#删除库(一定要进入到库里面去)
db.dropDatabase()
#删除集合
db.students.drop()

知识点一:MongoDB的常用操作

bash 复制代码
#插入数据
db.students.insert({'name':'jianqi','age':20})
db.students.insert({'name':'fufu','age':21})

#查看数据
db.students.find()

#插入多行数据
db.students.insert([{'name':'jianqi','age':20},{'name':'fufu','age':21}])

#指定id
db.students.insert({name:"jianqi",_id:1,age:20,sex:"女"})

#格式化输出
db.students.find().pretty

#查询满足条件的数据
db.students.find({name:"jianqi"})
db.students.find({name:"jianqi"}).pretty()

-------------------------------------------------------------------------------------------
条件
#and条件
db.students.find(
    {$and:
        [
            {name:"jianqi"},
            {age:20}
        ]
    }
                )
db.students.find({$and:[{name:"jianqi"},{age:20}]})

#or条件
db.students.find({$or:[{name:"jianqi"},{age:20}]})

#and和or混用
db.students.find({$or:[{$and:[{name:'jianqi'},{age:20}]},{$and:[{name:fufu},{age:21}]}]})

#修改
第一个字典是条件,只会更新找到的第一条数据,而且是全部覆盖
db.students.update({"name":"jack"},{age:100})
#修改指定的数据
db.students.update({name:"jianqi"},{$set:{age:18}})             #有就修改,没有就不修改
db.students.update({name:"fufu"},{$set:{age:19}},{upsert:true}) #有就修改,没有就插入

#更新满足条件的所有文档
db.students.update({name:"jack"},{$set:{name:"beibei"}},{multi:true})

#删除
#删除满足条件的第一条文档
db.students.remove({name:"jack"},{justOne:true})
#删除满足要求的所有文档
db.students.remove({name:"jack"})
#删除所有文档
jianqidatabase> db.students.remove({})

知识点二:Python操作MongoDB

python 复制代码
#如果没安装库先安装库命令如下
pip install pymongo

import pymongo

#建立连接
client=pymongo.MongoClient(host='127.0.0.1',port=27017)

#指定数据库
db=client["jianqidatabase"]

#指定下集合
my_col=db["students"]

#增一条数据
my_col.insert_one({'name':"jianqi",'age':18})
#增多条数据
my_col.insert_many([{'name':"jianqi1",'age':19},
                     {'name':"jianqi2",'age':20},
                     {'name':"jianqi3",'age':21}])

#删除一条
res=my_col.delete_one({'name':'jianqi1'})
print(res)
#全删
res=my_col.delete_many({})

#查一条数据
res=my_col.find_one()
print(res)
#查多条数据
res=my_col.find()
for i in res:
    print(i)

#改
my_col.update_one({'name':"jianqi1"},{"$set":{'age':100}})
res=my_col.find_one({'name':'jianqi1'})
print(res)
相关推荐
ClouGence2 小时前
CloudCanal + Paimon + SelectDB 从 0 到 1 构建实时湖仓
数据库
DemonAvenger9 小时前
NoSQL与MySQL混合架构设计:从入门到实战的最佳实践
数据库·mysql·性能优化
AAA修煤气灶刘哥20 小时前
后端人速藏!数据库PD建模避坑指南
数据库·后端·mysql
RestCloud1 天前
揭秘 CDC 技术:让数据库同步快人一步
数据库·api
得物技术1 天前
MySQL单表为何别超2000万行?揭秘B+树与16KB页的生死博弈|得物技术
数据库·后端·mysql
可涵不会debug1 天前
【IoTDB】时序数据库选型指南:工业大数据场景下的技术突围
数据库·时序数据库
ByteBlossom1 天前
MySQL 面试场景题之如何处理 BLOB 和CLOB 数据类型?
数据库·mysql·面试
麦兜*1 天前
MongoDB Atlas 云数据库实战:从零搭建全球多节点集群
java·数据库·spring boot·mongodb·spring·spring cloud
Slaughter信仰1 天前
深入理解Java虚拟机:JVM高级特性与最佳实践(第3版)第十章知识点问答(10题)
java·jvm·数据库
麦兜*1 天前
MongoDB 在物联网(IoT)中的应用:海量时序数据处理方案
java·数据库·spring boot·物联网·mongodb·spring