MongoDB数据库 MQL (MongoDB Query Language)语句大全

基本命令

连接到 MongoDB
mongo

显示所有数据库

show dbs

选择(或创建)数据库

db

集合操作

显示当前数据库中的所有集合
show collections

创建集合

db.createCollection("myCollection")

删除集合

db.myCollection.drop()

文档操作

插入文档

插入单个文档:

db.myCollection.insertOne({name: "Alice", age: 25})

插入多个文档:

db.myCollection.insertMany([{name: "Bob", age: 30}, {name: "Charlie", age: 35}])
查询文档

查询所有文档:

db.myCollection.find()

带条件查询:

db.myCollection.find({age: {$gt: 30}})

查询特定字段:

db.myCollection.find({}, {name: 1, age: 1, _id: 0})
更新文档

更新单个文档:

db.myCollection.updateOne({name: "Alice"}, {$set: {age: 26}})

更新多个文档:

db.myCollection.updateMany({age: {$gt: 30}}, {$set: {status: "Senior"}})

替换文档:

db.myCollection.replaceOne({name: "Alice"}, {name: "Alice", age: 27, city: "New York"})
删除文档

删除单个文档:

db.myCollection.deleteOne({name: "Alice"})

删除多个文档:

db.myCollection.deleteMany({age: {$lt: 30}})

索引操作

创建索引
db.myCollection.createIndex({name: 1})

显示索引

db.myCollection.getIndexes()

删除索引

db.myCollection.dropIndex("name_1")

聚合操作

聚合查询
db.myCollection.aggregate([
    {$match: {status: "Senior"}},
    {$group: {_id: "$status", total: {$sum: 1}}}
])

数据库管理

删除数据库
db.dropDatabase()

用户和权限

创建用户
db.createUser({
    user: "myUser",
    pwd: "myPassword",
    roles: [{role: "readWrite", db: "myDatabase"}]
})

删除用户

db.dropUser("myUser")

备份和恢复

数据库备份
mongodump --db myDatabase --out /path/to/backup

数据库恢复

mongorestore /path/to/backup/myDatabase

性能调优

查看性能状态
db.serverStatus()

查看当前操作

db.currentOp()

杀死长时间运行的操作

db.killOp(opid)

常用查询操作

查询条件和投影
db.myCollection.find({age: {$gte: 25}}, {name: 1, age: 1, _id: 0})

排序

db.myCollection.find().sort({age: -1})

分页

db.myCollection.find().skip(10).limit(10)

  • 5
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小绵羊不怕大灰狼

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值