美文网首页
mongo语法

mongo语法

作者: sundern | 来源:发表于2021-06-08 18:19 被阅读0次

    查询

    • 判断集合是否为空:"rowData":{}
    • 数组修改:"$set":{"rowDatas.0.texts":["755073291"]}
    • 判断是否串长度
    "areaId": {"$regex": /^.{0,12}$/} //长度小于12
    "areaId": {"$regex": /^.{12,}$/} //长度大于12
    
    • 批量更新数据
    db.getCollection('stats_working_gathered_respondent_task').find({"areaId":"$areaId"}).forEach(function(task){
      db.getCollection('stats_working_gathered_respondent_task').update({"_id":task._id},{"$set":{"areaId":task.areaId+"000000"}})
    })
    
    • 比较运算符:大于$gt | $gte,小于$lt | $lte

    聚合

    //sql
    "areaId": {"$not": /^[0-9]+$/}
    //java
    not().regex("^[0-9]+$")
    
    • 排序
    //mongo
    {"$sort":{"periodId":-1}}
    //java
    Aggregation.sort(new Sort(Sort.Direction.DESC, "periodId"))
    

    配置索引

    1. 数据库
    name |  idx_report_period_respondent
    keys | 
    {
        "reportCode" : 1,
        "respondentId" : 1,
        "periodId" : -1
    }
    
    1. 代码
    //加在实体上
    @CompoundIndexes({
            @CompoundIndex(name = "idx_report_period_respondent", def = "{'reportCode': 1,'respondentId': 1,'periodId': -1}")
    })
    

    • 使用客户端插入多条数据时,数据之间不需要逗号分隔。

    相关文章

      网友评论

          本文标题:mongo语法

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