zoukankan      html  css  js  c++  java
  • MongoDB查询

    一、find

    find查询返回一个集合中文档的子集

    1.find() 查询出匹配集合的全部内容

    db.study.find()

    2.find({"key":"value"})  and 条件  find({"key":"value","key2":"value2"})  

    db.study.find({"name":"李四1"})

    3.指定需要返回的键  

    db.study.find({name:"王五"},{"name":1,"info.age":1})
    结果:
    {
        "_id" : ObjectId("5f1fdcb19da18cf3e2cf8078"),
        "info" : {
            "age" : 19
        },
        "name" : "王五"
    }

    4.指定不需要返回的键

    db.study.find({name:"王五"},{"name":0})
    结果:
    {
        "_id" : ObjectId("5f1fdcb19da18cf3e2cf8078"),
        "address" : "北京,门头沟",
        "info" : {
            "age" : 19,
            "sex" : 1
        }
    }

    二、查询条件

    1.查询条件

    $lt : < ; $lte :<= ; $gt :> ; $gte: >= ;

    db.study.find({"age":{"$gte":5,"$lte":8}})

    $ne 不等于某个特定值

    db.blog.find({title:{"$ne":"test2"}})

    2.OR查询

    a.$in  包含 同一个键里面的包含

    db.blog.find({title:{"$in":["test2","test3"]}})

    b.$nin 不包含

    db.study.find({"address":{"$nin":["shanghai"]}})

    c.$or对于不同键的包含

    db.study.find({"$or":[{"address":"shanghai"},{"age":21}]})

    三、特定类型的查询

    1.null

    如果仅想匹配键值为null的文档,既要检查该键的值是否为null,还要通过$exists 判定键值已存在

    db.study.find({"sex":{"$in":[null],"$exists":true}})

    2.正则表达式

    a.区分大小写

    db.study.find({"name":/Li/})

    b.不区分大小写

    db.study.find({"name":/Li/i})

    c.添加前缀

    db.study.find({"name":/^test/})

    3.查询数组

    a.$all多个元素匹配

    db.study.find({lovly:{"$all":["food","play"]}})
    lovly中既要有food 还要有 play 的值
  • 相关阅读:
    idea 设置注释
    SVN解决冲突
    mysql执行 sql文件遇到USING BTREE ) ENGINE=MyISAM DEFAULT CHARSET=utf8错误
    如何查看JDK以及JAVA框架的源码
    一道常被人轻视的前端JS面试题
    Js 常用调试的方法
    主要的Ajax框架都有什么?
    Ajax使用的五步法
    Java正则表达式
    查出在当天所处的日期区间的某些数据
  • 原文地址:https://www.cnblogs.com/elephant-study/p/13440851.html
Copyright © 2011-2022 走看看