mongodb 学习笔记


前言

mongodb是一种非关系型数据库,相对于常用的mysql数据库,更适合对事务性要求不高的业务情况下使用。其面向文档的属性,也更加容易上手。针对读操作的时候拥有相当高的性能。

安装mongodb

网上的教程很多。详见链接

启动mongodb:

win:
mongod --dbpath=C:\yourpath\mongodb
mac:
mongod --config /usr/local/etc/mongod.conf
brew services start mongodb
ubuntu:
sudo systemctl status mongodb
sudo systemctl stop mongodb
sudo systemctl start mongodb
sudo systemctl restart mongodb

查看版本号

db.version()
mongo --version
mongod --version

数据库基本信息操作

删除数据库
db.dropDatabase()
查看数据表
show collections
查看数据库
show dbs
查看当前在哪个数据库
db

增删改查

db.COLLECTION_NAME .insert({
    "name" : "iac",
    "data" : {
        "reward" : "9",
        "appkey" : "832720",
        "appsecret" : "OamJsa1yVFq1tp8V"
    }
})
db.COLLECTION_NAME .insert({
    "name" : "iac"
})
db.COLLECTION_NAME .update ({
    txHash : {
        $in : [1]
    }
}, {
      types: 'withdrawIac',
      time: Date.parse(new Date())
    },{
    // true 批量更新
    multi : true
})
// 单表查询
db.COLLECTION_NAME .find ({
    "name" : "iac"
})
// 聚合查询,求和,等
db.COLLECTION_NAME.aggregate([
{
  $match : {
    types: 'recharge',
    time : query_params_timestamp,
  }
},
{
  $group : {
    _id : "$userId",
  }
},
{
  $group : {
    _id : "$userId",
    rechargeErCount : {
      $sum : 1
    },
  }
}
]);