• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    MongoDB快速入门笔记(四)之MongoDB查询文档操作实例代码

    MongoDB简介

    MongoDB 是一个基于分布式文件存储的数据库。由 C++ 语言编写。旨在为 WEB 应用提供可扩展的高性能数据存储解决方案。

    MongoDB 是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。

    下面给大家介绍MongoDB查询文档操作的实例

    先把student删除,再重新插入数据

    > db.student.drop()
    true
    > db.student.insert([{ "_id" : 1, "name" : "zhangsan", "age": 27, "sex": 1 }, { "_id" : 2, "name" : "lisi", "age": 27 } ,{ "_id" : 3, "name" : "wangwu", "age": 30 }, { "_id" : 4, "name" : "zhaoliu", "age": 28 }, { "_id" : 5, "name" : "qianliu", "age": 33 }, { "_id" : 6, "name" : "sunba", "age": 32 }])
    BulkWriteResult({
    "writeErrors" : [ ],
    "writeConcernErrors" : [ ],
    "nInserted" : 6,
    "nUpserted" : 0,
    "nMatched" : 0,
    "nModified" : 0,
    "nRemoved" : 0,
    "upserted" : [ ]
    })
    > db.student.find()
    { "_id" : 1, "name" : "zhangsan", "age" : 27 }
    { "_id" : 2, "name" : "lisi", "age" : 27 }
    { "_id" : 3, "name" : "wangwu", "age" : 30 }
    { "_id" : 4, "name" : "zhaoliu", "age" : 28 }
    { "_id" : 5, "name" : "qianliu", "age" : 33 }
    { "_id" : 6, "name" : "sunba", "age" : 32 } 

    1、查询指定键

    db.集合名称.find({查询条件},{指定键})

    指定键:1表示显示,0表示不显示,_id默认显示

    > db.student.find({},{name:1})
    { "_id" : 1, "name" : "zhangsan" }
    { "_id" : 2, "name" : "lisi" }
    { "_id" : 3, "name" : "wangwu" }
    { "_id" : 4, "name" : "zhaoliu" }
    { "_id" : 5, "name" : "qianliu" }
    { "_id" : 6, "name" : "sunba" }
    > db.student.find({},{_id:0, age:0})
    { "name" : "zhangsan", "sex" : 1 }
    { "name" : "lisi" }
    { "name" : "wangwu" }
    { "name" : "zhaoliu" }
    { "name" : "qianliu" }
    { "name" : "sunba" }
    > db.student.find({},{_id:0, name:1})
    { "name" : "zhangsan" }
    { "name" : "lisi" }
    { "name" : "wangwu" }
    { "name" : "zhaoliu" }
    { "name" : "qianliu" }
    { "name" : "sunba" } 

    2、各种查询方式

    $lt:
    $lte:=
    $gt:>
    $gte:>=
    $ne:!=
    > db.student.find({age:{$lt:30}})
    { "_id" : 1, "name" : "zhangsan", "age" : 27, "sex" : 1 }
    { "_id" : 2, "name" : "lisi", "age" : 27 }
    { "_id" : 4, "name" : "zhaoliu", "age" : 28 }
    > db.student.find({age:{$ne:27}})
    { "_id" : 3, "name" : "wangwu", "age" : 30 }
    { "_id" : 4, "name" : "zhaoliu", "age" : 28 }
    { "_id" : 5, "name" : "qianliu", "age" : 33 }
    { "_id" : 6, "name" : "sunba", "age" : 32 } 

    $in:包含

    $nin:不包含

    > db.student.find({age:{$in:[27,28]}})
    { "_id" : 1, "name" : "zhangsan", "age" : 27, "sex" : 1 }
    { "_id" : 2, "name" : "lisi", "age" : 27 }
    { "_id" : 4, "name" : "zhaoliu", "age" : 28 }
    > db.student.find({age:{$nin:[27,28]}})
    { "_id" : 3, "name" : "wangwu", "age" : 30 }
    { "_id" : 5, "name" : "qianliu", "age" : 33 }
    { "_id" : 6, "name" : "sunba", "age" : 32 } 

    $or:或者

    > db.student.find({$or:[{age:{$lt:29}}, {name:"sunba"}]})
    { "_id" : 1, "name" : "zhangsan", "age" : 27, "sex" : 1 }
    { "_id" : 2, "name" : "lisi", "age" : 27 }
    { "_id" : 4, "name" : "zhaoliu", "age" : 28 }
    { "_id" : 6, "name" : "sunba", "age" : 32 } 

    null:空值

    > db.student.find({sex: null})
    { "_id" : 2, "name" : "lisi", "age" : 27 }
    { "_id" : 3, "name" : "wangwu", "age" : 30 }
    { "_id" : 4, "name" : "zhaoliu", "age" : 28 }
    { "_id" : 5, "name" : "qianliu", "age" : 33 }
    { "_id" : 6, "name" : "sunba", "age" : 32 } 

    $type:键是某种类型的

    double:1
    string:2
    ...

    > db.student.insert({_id:7, name:7, age:70})
    WriteResult({ "nInserted" : 1 })
    > db.student.find({name: {$type: 2}})
    { "_id" : 1, "name" : "zhangsan", "age" : 27, "sex" : 1 }
    { "_id" : 2, "name" : "lisi", "age" : 27 }
    { "_id" : 3, "name" : "wangwu", "age" : 30 }
    { "_id" : 4, "name" : "zhaoliu", "age" : 28 }
    { "_id" : 5, "name" : "qianliu", "age" : 33 }
    { "_id" : 6, "name" : "sunba", "age" : 32 }
    > db.student.find({name: {$type: 1}})
    { "_id" : 7, "name" : 7, "age" : 70 } 

    正则表达式

    > db.student.find({name: /si\b/})
    { "_id" : 2, "name" : "lisi", "age" : 27 } 

    db.集合名称.findOne({查询条件},{指定键})
    查询出符合条件的第一条数据

    > db.student.findOne()
    { "_id" : 1, "name" : "zhangsan", "age" : 27, "sex" : 1 } 

    db.集合名称.find({查询条件},{指定键}).limit(数字)
    查询前几条数据

    > db.student.find().limit(3)
    { "_id" : 1, "name" : "zhangsan", "age" : 27, "sex" : 1 }
    { "_id" : 2, "name" : "lisi", "age" : 27 }
    { "_id" : 3, "name" : "wangwu", "age" : 30 } 

    db.集合名称.find({查询条件},{指定键}).skip(数字)
    跳过前几条数据

    > db.student.find().skip(2)
    { "_id" : 3, "name" : "wangwu", "age" : 30 }
    { "_id" : 4, "name" : "zhaoliu", "age" : 28 }
    { "_id" : 5, "name" : "qianliu", "age" : 33 }
    { "_id" : 6, "name" : "sunba", "age" : 32 }
    { "_id" : 7, "name" : 7, "age" : 70 } 

    可以使用limit()和skip()实现分页

    > db.student.find().skip(0).limit(3)
    { "_id" : 1, "name" : "zhangsan", "age" : 27, "sex" : 1 }
    { "_id" : 2, "name" : "lisi", "age" : 27 }
    { "_id" : 3, "name" : "wangwu", "age" : 30 }
    > db.student.find().skip(3).limit(3)
    { "_id" : 4, "name" : "zhaoliu", "age" : 28 }
    { "_id" : 5, "name" : "qianliu", "age" : 33 }
    { "_id" : 6, "name" : "sunba", "age" : 32 }
    > db.student.find().skip(6).limit(3)
    { "_id" : 7, "name" : 7, "age" : 70 } 

    db.集合名称.find().sort({键:数字})
    数字为1表示升序,数字为2表示降序

    > db.student.find().sort({age:1})
    { "_id" : 1, "name" : "zhangsan", "age" : 27, "sex" : 1 }
    { "_id" : 2, "name" : "lisi", "age" : 27 }
    { "_id" : 4, "name" : "zhaoliu", "age" : 28 }
    { "_id" : 3, "name" : "wangwu", "age" : 30 }
    { "_id" : 6, "name" : "sunba", "age" : 32 }
    { "_id" : 5, "name" : "qianliu", "age" : 33 }
    { "_id" : 7, "name" : 7, "age" : 70 }
    > db.student.find().sort({age:1, _id:-1})
    { "_id" : 2, "name" : "lisi", "age" : 27 }
    { "_id" : 1, "name" : "zhangsan", "age" : 27, "sex" : 1 }
    { "_id" : 4, "name" : "zhaoliu", "age" : 28 }
    { "_id" : 3, "name" : "wangwu", "age" : 30 }
    { "_id" : 6, "name" : "sunba", "age" : 32 }
    { "_id" : 5, "name" : "qianliu", "age" : 33 }
    { "_id" : 7, "name" : 7, "age" : 70 } 

    以上内容是小编给大家介绍的MongoDB快速入门笔记(四)之MongoDB查询文档操作实例代码,希望对大家有所帮助!

    您可能感兴趣的文章:
    • PHP库 查询Mongodb中的文档ID的方法
    • MongoDB中对文档的增删查改基本操作方法总结
    • MongoDB快速入门笔记(三)之MongoDB插入文档操作
    • MongoDB快速入门笔记(六)之MongoDB的文档修改操作
    • MongoDB快速入门笔记(六)之MongoDB删除文档操作
    • MongoDB修改、删除文档的域属性实例
    • MongoDB学习笔记(四) 用MongoDB的文档结构描述数据关系
    • MongoDB插入、更新、删除文档实现代码
    上一篇:MongoDB快速入门笔记(六)之MongoDB的文档修改操作
    下一篇:MongoDB快速入门笔记(三)之MongoDB插入文档操作
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    MongoDB快速入门笔记(四)之MongoDB查询文档操作实例代码 MongoDB,快速,入门,笔记,四,