zoukankan      html  css  js  c++  java
  • Mongodb

    MongoDB

    使用前的小插曲

    • 启动mongodb
    • mongod --dapath '数据库目录'
    • 默认端口 27017

    基本操作

    • show dbs 查看所有存在磁盘上的数据库
    • show tables 查看当前数据库存在磁盘上的数据表
    • use 数据库 切换数据库 如果没有就创建
    • 数据库.表名 创建表

    数据:

    MongoDB:
    [
    {
    "id":1,
    "name":"jwb",
    "age":73,
    "hobby":["ywb","lwb"],
    "duixiang":{
    "id":2,
    "name":"ywb",
    "age":84
    }
    },

    ​ {

    		"id":2,
    		"name":"ywb",
    		"age":84,
    		"duixiang":{
    			"id":1,
    			"name":"jwb",
    			"age":73,
    		}
    	}
    ]
    

    数据增删改查

    增加 insert

    db.user.insert({'id':1, 'name':'alex','age':18})

    官方推荐写法

    db.user.insertOne({})

    db.user.insertMany({})

    查看 find

    db.user.find()

    db.user.findOne({})

    db.user.find({'id':2, 'age':23}) 并列条件

    $or : db.user.find({ $or:[{'id':2, },{'age':23}}) 或 满足一个即可

    同一个字段的 或 条件

    $in : db.user.find({age:{$in:[18,19,20]}})

    子集检索

    db.user.find({ what :{$in: [ 1, 2]}})

    $all : 满足所有条件

    db.user.find({what: {$all:[a,b,c]}})

    更新 update 修改器 $set

    db.user.update({'age':23},{$set:{'username':'wusir'}})

    官方推荐写法:
    db.user.updateOne({'name':"alex"},{$set:'{'age':22}'})

    db.user.updateMany({'name':"alex"},{$set:'{'age':22}'})

    删除 remove/delete

    db.user.remove({'age': 50})

    官方推荐写法:
    db.user.deleteOne({'name':'alex'})

    db.user.deleteMany({'name':'alex'})

    $修改器:

    $set : 暴力修改

    $unset : 暴力删除字段

    db.user.updateOne({'name':'alex},{$unset:{'hobby':1}})

    $inc : 引用增加 在原有的数值上增加 正数增加,负数减少

    db.user.updateMany({},{$inc:{age:1}})

    array修改器:

    $push 增加元素 : db.user.updateOne({'name':'alex'},{$push:{'hobby':'烫头'}})

    $pull 删除元素 :db.user.updateOne({'name':'alex'},{$pop :{'hobby':抽烟}})

    $ pushAll 迭代增加 : db.user.update({'name'.'alex'},{$pushAll:{'hobby':[1,2,3]}})

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

    最后一条 db.user.updateOne({'name':'alex'},{$pop:{'hobby':1}})

    第一条 db.user.updateOne({'name':'alex'},{$pop:{'hobby':-1}})

    $ 字符

    ['hj','tt',1,2] {'hobby':'hj'} hj是hobby列表中的第0个元素

    就把0这个数据放在了$ 中

    db.user.updateMany({'hobby':'hj'},{$set:{'hobby.$':'喝酒'}})

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

    object操作

    db.user.updateOne({"kecheng.name":"python"},{$set:{"kecheng.price":19800}})
    db.user.updateOne({"kecheng.name":"python"},{$inc:{"kecheng.price":500}})

    Array中的Object

    db.user.updateOne({"hobby.age":84},{$set:{"hobby.$.age":73}})

    Object中的Array

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

    数据类型:

    ObjectID :Documents 自生成的 _id

    String: 字符串,必须是utf-8

    Boolean:布尔值,true 或者false (这里有坑哦~在我们大##Python中 True False 首字母大写)

    Integer:整数 (Int32 Int64 你们就知道有个Int就行了,一般我们用Int32)

    Double:浮点数 (没有float类型,所有小数都是Double)

    Arrays:数组或者列表,多个值存储到一个键 (list哦,大Python中的List哦)

    Object:如果你学过Python的话,那么这个概念特别好理解,就是Python中的字典,这个数据类型就是字典

    N#ull:空数据类型 , 一个特殊的概念,None Null

    Timestamp:时间戳

    Date:存储当前日期或时间unix时间格式 (我们一般不用这个Date类型,时间戳可以秒杀一切时间类型)

    MongoDB中的跳过选取排序:
    skip(5) 跳过五条数据
    limit(5) 只显示五条数据
    分页 skip(5).limit(5)

    sort({age:1}) 正序
    sort({age:-1}) 倒序

    如果三个关键字同时出现 1.sort 2.skip 3.limit

    与顺序无关

    pymongo:
    find_one
    insert_one
    insert_many
    update_one
    update_many
    delete_one
    delete_many

    sort("key",1)

  • 相关阅读:
    WCF 第四章 绑定 在多个绑定上暴露一个服务契约
    WCF 第五章 行为 事务跨操作事务流
    WCF 第五章 导出并发布元数据(服务行为)
    WCF 第五章 行为 通过配置文件暴露一个服务行为
    WCF 第五章 不支持会话的绑定的默认并发和实例
    WCF 第五章 并发和实例(服务行为)
    WCF 第五章 行为 总结
    WCF 第四章 绑定 绑定元素
    WCF 第五章 行为 事务之选择一个事务协议OleTx 或者WSAT
    WCF 第四章 绑定 比较各种绑定的性能和可扩展性
  • 原文地址:https://www.cnblogs.com/zzy7372/p/10278864.html
Copyright © 2011-2022 走看看