美文网首页
MongoDB查询技巧集【持续更新】

MongoDB查询技巧集【持续更新】

作者: 深思海数_willschang | 来源:发表于2016-09-30 11:47 被阅读105次
    //mongodb查看db里有几个collection
    show collections
    
    //mongodb查询数据库有哪些表
    
    db.col.find(...).count() 
    db.col.find(...).limit(n) //根据条件查找数据并返回指定记录数 
    db.col.find(...).skip(n) 
    db.col.find(...).sort(...) //查找排序 
    db.col.findOne([query]) //根据条件查询只查询一条数据 
    db.col.getDB() get DB object associated with collection //返回表所属的库 
    db.col.getIndexes() //显示表的所有索引 
    db.col.group( { key : ..., initial: ..., reduce : ...[, cond: ...] } ) //根据条件分组 
    db.col.mapReduce( mapFunction , reduceFunction , <optional params> ) 
    db.col.remove(query) //根据条件删除数据 
    db.col.renameCollection( newName ) renames the collection //重命名表 
    db.col.save(obj) //保存数据 
    db.col.stats() //查看表的状态 
    db.col.storageSize() - includes free space allocated to this collection //查询分配到表空间大小 
    db.col.totalIndexSize() - size in bytes of all the indexes //查询所有索引的大小 
    db.col.totalSize() - storage allocated for all data and indexes //查询表的总大小 
    db.col.update(query, object[, upsert_bool]) //根据条件更新数据 
    db.col.validate() - SLOW //验证表的详细信息 
    db.col.getShardVersion() - only for use with sharding
    
    //正则
    {"n": {'$regex' : '.*' + _req.n + '.*'}}
    
    
    //mongodb 实现lbs查询
    /***************************
    首先需对col里的loc设置索引为'2d',方可进行$near查询
    db.col.ensureIndex({'loc':'2d'})
    db.col.getIndexes()
    ****************************/
    db.col.find({"loc": {$near: [longtitude, lattitude], $maxDistance:0.1}})
    
    // mongodb里数组值查询
    /*****************************
    { _id: 1, results: [ 82, 85, 88 ] }
    { _id: 2, results: [ 75, 88, 89 ] }
    db.scores.find(
       { results: { $elemMatch: { $gte: 80, $lt: 85 } } }
    )
    ******************************/
    db.col.find({"img": {$elemMatch: {$regex: ".*willschang.*"}}})
    

    相关文章

      网友评论

          本文标题:MongoDB查询技巧集【持续更新】

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