随笔 - 833  文章 - 0  评论 - 9  阅读 - 35万

MongoDB入门笔记

环境

MacOS10.14.4

安装

brew tap mongodb/brew
brew install mongodb-community@4.0

运行

in the foreground

mongod --config /usr/local/etc/mongod.conf

as a macOS service

brew services start mongodb-community@4.0

连接并使用

mongo

基本操作

Create 增

插入一个

db.inventory.insertOne(
   { item: "canvas", qty: 100, tags: ["cotton"], size: { h: 28, w: 35.5, uom: "cm" } }
)

插入多个

db.inventory.insertMany([
   { item: "journal", qty: 25, tags: ["blank", "red"], size: { h: 14, w: 21, uom: "cm" } },
   { item: "mat", qty: 85, tags: ["gray"], size: { h: 27.9, w: 35.5, uom: "cm" } },
   { item: "mousepad", qty: 25, tags: ["gel", "blue"], size: { h: 19, w: 22.85, uom: "cm" } }
])

Read 查

查询单个

db.inventory.find( { item: "canvas" } )

查询所有

db.inventory.find( {} )

利用操作符指定查询条件

db.inventory.find( { status: { $in: [ "A", "D" ] } } )
含义等价于
SELECT * FROM inventory WHERE status in ("A", "D")

AND

db.inventory.find( { status: "A", qty: { $lt: 30 } } )
含义等价于
SELECT * FROM inventory WHERE status = "A" AND qty < 30

OR

db.inventory.find( { $or: [ { status: "A" }, { qty: { $lt: 30 } } ] } )
含义等价于
SELECT * FROM inventory WHERE status = "A" OR qty < 30

AND OR

db.inventory.find( {
     status: "A",
     $or: [ { qty: { $lt: 30 } }, { item: /^p/ } ]
} )
含义等价于
SELECT * FROM inventory WHERE status = "A" AND ( qty < 30 OR item LIKE "p%")

Update 改

update one

db.inventory.updateOne(
   { item: "paper" },
   {
     $set: { "size.uom": "cm", status: "P" },
     $currentDate: { lastModified: true }
   }
)

update many

db.inventory.updateMany(
   { "qty": { $lt: 50 } },
   {
     $set: { "size.uom": "in", status: "P" },
     $currentDate: { lastModified: true }
   }
)

replace one

db.inventory.replaceOne(
   { item: "paper" },
   { item: "paper", instock: [ { warehouse: "A", qty: 60 }, { warehouse: "B", qty: 40 } ] }
)

Delete 删

delete all

db.inventory.deleteMany({})

delete many

db.inventory.deleteMany({ status : "A" })

delete one

db.inventory.deleteOne( { status: "D" } )

参考链接

posted on   Simle  阅读(105)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

点击右上角即可分享
微信分享提示