开发者社区> 问答> 正文

mongodb如何查询数据

mongodb如何查询数据

展开
收起
社区秘书 2019-12-10 14:55:20 817 0
1 条回答
写回答
取消 提交回答
  • 查询数据使用db.表名.find()查询数据。

    如果不指定条件时则默认查询所有,例如:

    db.noPK.find()

    { "_id" : ObjectId("5a50642b908e6b07a84472a2"), "name" : "javascript", "value" : "vue.js" }

    { "_id" : ObjectId("5a50703c908e6b07a84472a6"), "name" : "shell", "type" : "script" }

    指定条件查询

    db.noPK.find({"name":"shell"})

    { "_id" : ObjectId("5a50703c908e6b07a84472a6"), "name" : "shell", "type" : "script" }

    如果希望显示的数据格式化显示,则使用pretty()。

    例如:

    db.noPK.find({"name":"shell"}).pretty()

    {

    "_id" : ObjectId("5a50703c908e6b07a84472a6"),

    "name" : "shell",

    "type" : "script"

    }

    查询条件

    $lt 小于 例如{"age": {$lt:30}}

    $lte 小于或等于 例如 {"age": {$lte: 30}}

    $gt 大于 例如{"age": {$gt: 30}}

    $gte 大于或等于

    $ne 不等于

    $or 逻辑或

    例如:

    db.user.find({"$or":[{"hobby":"swimming"},{"gender":"female"}]},{"_id":0})

    { "hobby" : "swimming", "gender" : "female" }

    { "hobby" : "swimming", "gender" : "male" }

    查询表中一共有多少条数据,使用.count()方法。

    例如:

    db.noPK.find().count()

    只查询一条数据,使用findOne()。

    如果不给参数的话默认返回第一条数据,如果指定了条件进行查询,返回根据条件查询到的第一条。

    例如:获取一条数据,不指定条件:

    db.noPK.findOne()

    指定条件

    db.noPK.findOne({"name": "javascript"})

    如果想查询并删除某条数据可以使用 findOneAndDelete()

    同样的如果不指定条件的话,默认删除表中的第一条数据。

    例如:

    db.noPK.findOneAndDelete()

    指定条件

    db.noPK.findOneAndDelete({"name": "was"})

    2019-12-10 14:55:42
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
MongoDB多数据中心的方案选型之路 立即下载
阿里云MongoDB云服务构建 立即下载
饿了么高级架构师陈东明:MongoDB是如何逐步提高可靠性的 立即下载