NoSQL数据库原理与应用-MongoDB基础

本文档详细介绍了MongoDB的查询操作,包括find的基本用法、查询条件、特定类型查询,如比较操作符、$in和$not、$or查询。此外,还探讨了MongoDB的游标迭代和索引的创建、类型、管理和唯一性,强调了索引在提高查询效率中的重要性。
摘要由CSDN通过智能技术生成

1.MongoDB查询

1.1 find简介

lMongoDB 查询数据的语法格式如下:

  db.collection.find( {query}, {projection} )

参数说明:

query :可选,使用查询操作符指定查询条件。

projection :可选,指定返回的键

db.col.find().pretty()

pretty() 方法以格式化的方式来显示所有文档

1.1.1 查询所有数据

空的查询文档{}会匹配集合的全部内容。若是不指定查询文档,默认就是{}。

例如:

1、db.user.find({})                                            即查询user集合中的全部内容

2、db.user.find({“age”:18})                            查找所有的“age”的值为18的文档

3、db.user.find({“name”:“jack”})                    想匹配一个字符串,“name”的值为“jack”的

4、db.user.find({“name”:“jack”,“age”:18}) 查询所有用户名为“jack”且年龄为18的用户

1.1.2 指定返回键

 

 指定键的值为0,不返回该键值对;为1时返回

user集合的数据

查看命令:db.user.find({},{”_id”:0,“username”:1}) 

1.2 查询条件

1.2.1 比较操作符

    $lt:小于(<)

    $lte :小于等于(<=)

    $gt :大于(>)

    $gte :大于等于(>=)

    $ne :不等于(≠)

db.user.find({“age”:{“$gte”:18}})

需求:

查询user集合中:年龄在18到28的用户

命令:

db.user.find({“age”:{“$gte”:18,“$lte”:28}})

1.2.2包含($in)或不包含($nin)

示例:

(1)查询国籍是中国或者美国的学生信息

db.persons.find({country:{$in:[“USA”,“China”]}})

(2)查询国籍不是中国或美国的学生信息。

db.persons.find({country:{$nin:[“USA”,“China”]}})

1.2.3 ”$or”查询与“$not”查询

 $or 查询

查询语文成绩大于90或者英语成绩大于85的学生信息:

db.personsr.find({$or:[{c:{$gte:85}},{e:{$gte:90}}]})

$not 查询

查询出名字中不存在“foo”的学生的信息:

db.persons.find({name:{$not:/foo/}})

1.3 特定类型查询

1.3.1 null

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值