美文网首页
非关系型数据库 MongoDB 增删改查

非关系型数据库 MongoDB 增删改查

作者: 龙小江i | 来源:发表于2019-05-08 16:20 被阅读0次

# 创建数据库
use 数据库名;

# 创建集合
db.createCollection("集合名",参数); # 一般是创建数据时自动创建集合

# 删除数据库
db.dropDatabase 数据库名;

# 删除集合
db.集合名.drop();

# 删除数据(指定条件)
db.集合名.remove({查询条件});

# 删除数据(所有数据)
db.集合名.remove({});

# 新增数据
db.集合名.insert({"键":"值","键":"值"...}); # 若集合不存在,则自动创建集合

# 查询数据
db.集合名.find();

# 修改数据(修改整个集合)
db.集合名.update({查询条件},{修改目标});

# 修改数据(修改集合中单个键值对)
db.集合名.update({查询条件},{$set:{修改目标}});

# 创建索引
db.集合名.createIndex({"键":1,"键":-1}); # 1:升序索引;-1:降序索引
db.集合名.ensureIndex({"键":1,"键":-1}); # 1:升序索引;-1:降序索引

# 查看数据库列表
show dbs;

# 查看集合
show collections; # 或者是 show tables;

# 查看当前所在数据库
db;

# 查找集合中第一条数据
db.集合名.findOne();

# 输出格式化
db.集合名.find().pretty() # 一般是在小黑窗里面查询时用得到

# 比较查询-大于
db.集合名.find({"键":{$gt:"值"}});

# 比较查询-小于
db.集合名.find({"键":{$lt:"值"}});

# 比较查询-大于等于
db.集合名.find({"键":{$gte:"值"}});

# 比较查询-小于等于
db.集合名.find({"键":{$lte:"值"}});

# 比较查询-区间
db.集合名.find({"键":{$gt:值,$lt:"值"}}); # 开区间 (x,y)
db.集合名.find({"键":{$gte:值,$lte:"值"}}); # 闭区间 [x,y]

# 比较查询-不等于
db.集合名.find({"键":{$ne:"值"}});

# 判断在集合中
db.集合名.find({"键":{$in:["值","值","..."]}});

# 判断不在集合中
db.集合名.find({"键":{$nin:["值","值","..."]}});

#值的个数
db.集合名.find({"键":{$size:"值"}});

# 判断键名是否存在
db.集合名.find({"键":{$exists:true|false}}); # true:存在;false:不存在

# 多个条件中满足一个
db.集合名.find({$or:[{条件},{条件},{...}]}); # 条件:{"键":"值"}

# 模糊查询
db.集合名.find({"键":"值"}); # 值:正则表达式(JS中语法)

# 查询结果排序
db.集合名.find({}).sort({"键":1,"键":-1}); # 1:升序;-1:降序

# 输出前N条记录
db.集合名.find({}).limit(number); # number:数字,限制输出前N条记录

# 跳过输出前N条记录
db.集合名.find({}).skip(number); # number:数字,跳过输出前N条记录

# 计数
db.集合名.aggregate({$group:{_id:"$键",别名:{$sum:1}}}); # $sum:1特定用法:计数

# 求和
db.集合名.aggregate({$group:{_id:"$键",别名:{$sum:"$键"}}}); # _id:null表示不分组

# 平均值
db.集合名.aggregate({$group:{_id:"$键",别名:{$avg:"$键"}}});

# 查询结果分组
db.集合名.aggregate({$group:{_id:"$键",别名:{$push:"$键"}}}); # 类似于拼接字段group_concat(),拼接结果是一个数组

# 最大值
db.集合名.aggregate({$group:{_id:"$键",别名:{$max:"$键"}}});

# 最小值
db.集合名.aggregate({$group:{_id:"$键",别名:{$min:"$键"}}});

# 分组第一个值
db.集合名.aggregate({$group:{_id:"$键",别名:{$first:"$键"}}});

# 分组最后一个值
db.集合名.aggregate({$group:{_id:"$键",别名:{$last:"$键"}}});

# 多个聚合函数
db.集合名.aggregate({$group:{_id:"$键",别名:{$sum:"$键"},别名:{$avg:"$键"},...}}); # 逗号分隔,最后一个不打逗号

# 匹配条件
db.集合名.aggregate({$match:{"键":{条件}}});

# 匹配分组
db.集合名.aggregate([{$match:{"键":{条件}}},{$group:{_id:"$键",别名:{$sum:1}}}]); # 对匹配结果进行聚合

# 限制输出字段
db.集合名.aggregate({$project:{"键":1|0}}); # 1:显示;0:不显示

# 拆分数组字段
db.集合名.aggregate({$unwind:"键"});

相关文章

  • 关于python的list的增查删改

    说到增查删改,想起了数据库,我们在关系型数据库当中就会对表进行增查删改。 在python当中我们也可以对list进...

  • MongoDB数据库的安装和使用

    MongoDB概述 1,MongoDB数据库是一种非关系型数据库(NoSQL),什么是非关系型数据库可以使用度娘查...

  • Mongodb and pymongo

    mongodb:非关系型数据库 一: 非关系型数据库NoSQL全称--Not Only Sql 非关系型数据库主要...

  • MongoDB入门

    MongoDB与关系型数据库对比 MongoDB属于文档型的非关系型数据库,其他像Redis就属于键值对型的非关系...

  • 116.mongodb

    mongodb:非关系型数据库##一:非关系型数据库NoSQL全称-不仅SQL非关系型数据库的主要特点:非关系型的...

  • MongoDB基本概念和数据库操作

    MongoDB基本概念 MongoDB是一个非关系型数据库,但是它同时又是最像关系型数据库的非关系型数据库,所有我...

  • Python操作MySQL(待续)

    数据库分类框架 关系型数据库:Mysql,Oracle,Sqlite 非关系型数据库:MongoDB,Redis非...

  • MongoDB小总结

    关系型数据库:mysql非关系型数据库:mongodb、redismongodb:(nosql:not only ...

  • 简介

    mongoDB是一种非关系型数据库。 关系型数据库有:sqlserver,access,mysql MongoDB...

  • 非关系型数据库 MongoDB 增删改查

    增 删 改 查

网友评论

      本文标题:非关系型数据库 MongoDB 增删改查

      本文链接:https://www.haomeiwen.com/subject/xwamoqtx.html