zoukankan      html  css  js  c++  java
  • MongoDB 基础

    MongoDB 的 rbac

    增:

    不推荐:
    
    db.tablename.insert([{}],{})
    
    官方推荐:
    
    db.tablename.insertOne({})
    
    db.tablename.inserMany([{},{}])

    删:

    不推荐:
    
    db.tablename.remove({})
    
    官方推荐:
    
    db.tablename.deletOne({条件}) # 删除符合条件的第一条
    
    db.tablename.deletMany({条件}) # 删除符合条件的所有

    改:

    不推荐:
    
    db.tablename.update({},{$set:{field:value}})
    
    官方推荐:
    
    db.tablename.updateOne({},{$set:{}})
    
    db.tablename.updateMany({},{$set:{}})

    修改器:

    $set # 暴力修改
    $unset # 强制删除字段
    $inc +1/-1 # 引用增加

    Array修改器:

    $push 
    
    # list中的append 追加数据 
    
    updateOne({},{$push:{list:1}})
    
    
    $pull 
    
    # list中的remove 删除某元素 
    
    updateOne({},{$pull:{list:1}})
    
    
    $pushAll 
    
    # list中的extends 迭代追加最后追加数据 
    
    updateOne({},{$pushAll:{list:[1,2,3]}})
    
    
    $pop 
    
    # list中的pop 删除第一个元素或者最后一个元素 
    
    updateOne({},{$pop:{list:-1}}) / updateOne({},{$pop:{list:1}})

    $ —— 符合条件的下表 —— array 当中

    [1,4,5,2,1] $=0
    
    updateOne({list:1},{$set:{"list.$":6}})
    
    # 存储符合条件元素的下标索引,只能存放一个下标 - 只能存放符合条件第一个

    查:

    db.tablename.find({})
    
    fb.tablename.findOne({})

    并列条件:

    find({"name":"1","age":2})
    
    # 或条件 - 不同字段的或
    
    $or findOne({$or:[{"name":"1"},{"age":2}]})

     

    子集 位置可以发生变化:

    $in findOne({"age":{$in:[1,2,3,4,5]}})

     

    完全符合 位置可以发生变化:

    $all findOne({"age":{$all:[1,2,3,4]}})

     

     

    sort limit skip

    find({"age":{$all:[1,2,3,4]}}).sort({"key":-1})
    
    find({"age":{$all:[1,2,3,4]}}).limit(5) # 只显示当前位置向下5条
    
    find({"age":{$all:[1,2,3,4]}}).skip(5) # 跳过五条数据,决定当前位置

    优先级

    find({"age":{$all:[1,2,3,4]}}).sort({"key":-1}).skip(5).limit(5)
  • 相关阅读:
    SpringMVC拦截器使用
    JavaCORBA
    Mybatis各语句高级用法(未完待续)
    [译文]C# Heap(ing) Vs Stack(ing) in .NET: Part II
    [译文]C# Heap(ing) Vs Stack(ing) in .NET: Part I
    iBatis连接MySQL时的注意事项
    MyBatis入门
    属性(property) VS 数据成员(field)
    [译文]C# Heap(ing) Vs Stack(ing) in .NET: Part III
    LINQ To Objects
  • 原文地址:https://www.cnblogs.com/zbw582922417/p/10284332.html
Copyright © 2011-2022 走看看