• MongoDB的基本使用


    MongoDB-NoSql型数据库

    1.MongoDB的安装

    MongoDB的安装非常简单(傻瓜式安装) 直接去官网下载安装包, 一路确认到底就好了

    2.MongoDB的可视化工具

    NoSQLBooster for MongoDB

    下载安装即可

    3.启动MongoDB

    mongod --dbpath 数据库目录
    默认端口 27017

    一些MongoDB的基本命令:

    show dbs 查看所有数据库

    use 数据库名 使用数据库 如果数据库不存在 会在内存中开辟一块地址用来使用,直到向表中插入数据, 便会向磁盘中写如文件

    show tables 查看当前数据库中所有的表

    MongoDB 中的名词 与 Mysql对比

    mysql mongodb
    数据库 数据库
    表 collections
    列 Field
    row documents

    4.MongoDB的增删改查

    增加:

    	db.user.insert({"id": 1, "name": "xj", "age":21})
    	
    	在3.2版本中 官方推出了insertOne, insertMany方法并且推荐使用(提升了效率)
    	db.user.insertMany([{},{}])  # 批量添加
    	db.user.insertOne({})		 # 添加一个	
    

    删除:

    	db.user.remove({'id': 1})
    	
    	在3.2版本中 官方退出了deleteOne,deteteMany方法并且推荐使用(提升了效率)
    	db.user.deleteOne({'id': 1})    # 删除id为1的用户
    	db.user.deleteMany({age: 21}) # 删除所有年龄为21的用户
    

    更新:

    	db.user.update({'id': 1}, {$set: {'age': 22}})
    	
    	在3.2版本中 官方推出了updateOne, updateMany方法并且推荐使用(提升了效率)
    	db.user.updateOne({'id': 1}, {$set: {'age': 22}})    # 将id为1的用户的年龄改为22
    	db.user.updateMany({'age': 22}, {$set: {'age': 23}}) # 将年龄为22的用户年龄更改为23
    

    查询:

    	db.user.find({})  # 查询所有
    	db.user.findOne({}) # 查询找到的第一个
    	
    	# 并列条件查询
    	db.user.find({'id': 1, 'age': 21})  # 查询所有id为1 age为21的用户
        # 或条件查询
        db.user.find($or: [{'id': 1},{'age': 21}]) # 查询id为1 或者 age为21的用户
        # 同一个字段的或条件
        db.user.find({'age': {$in: [19,20,21]}}) # 查询所有年龄在19-21之间的用户
     	# 子集检索
        db.user.find({what: {$in: [1,2,3]}})
        # 满足所有条件
        db.user.find({what: {$all:[2,1,3]}})
        # 数学比较符
        $gt: 大于   db.user.find({age:{$gt: 20}}) # 查询所有年龄大于20的用户
        $gte: 大于等于
        $lt: 小于
        $lte: 小于等于
        $eq: 等于 相当于 ':'
    

    5.MongoDB中的修改器:$

    $set: 暴力修改

    $unset: 暴力删除字段

    $inc: 引用增加 在原有值的基础上增加

    db.user.updateOne({'id': 1},{$inc: {'age': 1}}) 把id为1的用户的age在原有基础上加1

    5.1.array修改器

    $push: 增加元素

    db.user.updateOne({'id': 1},{$push: {'hobby': 'sing'}})

    在id为1的用户的爱好列表中添加一个sing

    $pull: 删除元素

    db.user.updateOne({'id': 1},{$pull: {'hobby': 'sing'}})

    将id为1的用户的爱好列表中的sing删除

    $pushAll:批量添加

    db.user.updateOne({'id': 1},{$pull: {'hobby': ['sing', 'read']}})

    向id为1的用户的爱好列表中添加两项(sing, read)

    $pop: 删除最后一条/第一条

    db.user.updateOne({'id': 1}, {$pop: {'hobby': 1}}) 删除最后一条

    db.user.updateOne({'id': 1}, {$pop: {'hobby': -1}}) 删除第一条

    5.2.$ 字符

    db.user.updateMany({'hobby': 'sing'}, {$set:{'hobby.$': play}})

    将hobby中为sing的位置修改为play

    ########### $存储符合条件的元素的下标索引 ###########

    5.3.object操作

    db.user.updateMany({'hobby.time':'三年'},{$set: {'hobby.name':'speak'}})

    将hobby对象的time为三年的hobby的name改为speak

    Array中的object:

    db.user.updateOne({'hobby.time':'三年'},{$set: {'hobby.$.name':'sing'}})

    object中的array

    db.user.updateOne({"kecheng.class":15},{$set:{"kecheng.class.$":20}})

  • 相关阅读:
    xampp只允许本地访问,禁止远程访问
    Centos 7 安装 设置 IP地址,DNS,主机名,防火墙,端口,SELinux (实测+笔记)
    centos 7.0 网卡配置及重命名教程
    VS2010 安装 MVC3 Entity Framework
    SQL 增加删除库表
    轻松绕各种WAF的POST注入、跨站防御(比如安全狗)
    CRM协同8.2升级到9.2SP2步骤
    [转]EasyUI+MVC+EF简单用户管理Demo(问题及解决)
    设置VMware随系统开机自动启动并引导虚拟机操作系统
    项目管理——随笔 2015.06.05
  • 原文地址:https://www.cnblogs.com/Treasuremy/p/10278081.html
Copyright © 2020-2023  润新知