成都建站网站模板,问答网站怎么做营销,烟台网站建设在哪,惠州百度seo在哪在MongoDB集合中查找文档 一、实验目的二、实验原理三、实验步骤1.启动MongoDB数据库、启动MongoDB Shell客户端2.数据准备--person.json3.指定返回的键4 .包含或不包含 i n 或 in 或 in或nin、$elemMatch#xff08;匹配数组#xff09;5.OR 查询 $or6.Null、$exists7.… 在MongoDB集合中查找文档 一、实验目的二、实验原理三、实验步骤1.启动MongoDB数据库、启动MongoDB Shell客户端2.数据准备--person.json3.指定返回的键4 .包含或不包含 i n 或 in 或 in或nin、$elemMatch匹配数组5.OR 查询 $or6.Null、$exists7.正则查询 $regex8.$not 的使用9.数组查询$all 和 index 应用10.查询指定长度数组$size它不能与比较查询符一起使用11.查询出喜欢的书籍数量大于 4 本的学生12.利用shell查询出Jim喜欢看的书的数量13.在当前数据库 persons1 集合中中添加以下文档信息14.$slice 操作符返回文档中指定数组的内部值15.嵌套文档查询16.分页和排序17.游标18.Count函数——计数19.Distinct函数——去重20.嵌套文档查询 一、实验目的
1.掌握在 MongoDB中查询文档操作
2.掌握查找单个文档、多个文档、使用查询运算符根据字段值查找文档,根据子文档查找文档的方法
二、实验原理
MongoDB 支持多种复杂的查询方式能实现大多数 T-SQL 功能远不是 Key-Value 之类的 NoSQL DB 所能比拟的。
Conditional Operator : $lt , $lte , $gt , $gte
Conditional Operator : $ne //不等于
Conditional Operator : $in //属于
Conditional Operator : $nin //不属于
Conditional Operator : $mod //取模运算
Conditional Operator : $all //全部属于
Conditional Operator : $size //数量
Conditional Operator : $exists //字段存在
Conditional Operator : $or // 或
Regular Expressions //正则表达式
Value in an Array // 数组中的值
Conditional Operator : $elemMatch //要素符合
Meta operator: $not //不是
Conditional Operators : $slice //切片
Javascript Expressions and $where //
sort() //排序
limit() //限制取数据条数
skip() //跳过一定数值开始取
count() // 数量
group() //分组
三、实验步骤
1.启动MongoDB数据库、启动MongoDB Shell客户端 2.数据准备–person.json
2.1切换到 xscj 数据库Shell 端执行以下脚本实现在 xscj 数据库中添加 persons 集合,并增加11条学生信息。 2.2查询persons集合中的所有文档信息 2.3查询persons集合中的所有文档信息规整查找结果的格式——节选一部分 3.指定返回的键
格式为db.[documentName].find({条件},{键指定})
3.1查询出所有学生的name、age和country信息 3.2查询出年龄在 25 到 27 岁之间的学生姓名。 3.3查询出所有不是韩国籍的学生的数学成绩,结果显示姓名和数学成绩。 4 .包含或不包含 i n 或 in 或 in或nin、$elemMatch匹配数组
4.1查询国籍是中国或美国的学生信息 4.2查询国籍不是中国或美国的学生信息 4.3查询出满足数组中指定条件的文档
步骤一在当前数据库中添加数据到 scores 集合中{_id: 1, results: [82,85,88] },{ _id: 2, results: [75,88,89]} 步骤二查询 89results95 的文档 5.OR 查询 $or
查询语文成绩大于 85 或者英语大于 90 的学生信息结果显示学生姓名语文成绩和英语成绩。 6.Null、$exists
1把中国国籍的学生上增加新的键 sex 6.2查询出sex等于null的学生 6.3查询集合中包含sex键的文档 6.4查询集合中不包含sex键的文档 7.正则查询 $regex
正则表达式对象{ field: /pattern/options }
$regex 为模糊查询的字符串提供正则表达式功能。
7.1查询出名字中存在”li”的学生的信息 7.2分析以下查询实现的操作在当前数据库 xs 集合中录入实例数据检验其功能。 db.xs.find({name:{$in:[/^joe/i,/^jack/}}) db.xs.find({name:{$regex:/^zh/i, $nin:[zhang]}}) db.xs.find({email:{$regex:/qq./,$options:i}}) db.xs.find({name:{$regex:/^zh/}}) db.xs.find({name:{$regex:/c/}})
8.$not 的使用
$not 可以用到任何地方进行取反操作。
查询出名字中不存在”li”的学生的信息。 n o t 和 not 和 not和nin 的区别是 n o t 可以用在任何地方而 not 可以用在任何地方而 not可以用在任何地方而nin 用到集合上。
9.数组查询$all 和 index 应用
9.1查询喜欢看MONGODB和JS的学生 9.2 查询第二本书是 JAVA 的学习信息 10.查询指定长度数组$size它不能与比较查询符一起使用
查询出喜欢的书籍数量是 4 本的学生 11.查询出喜欢的书籍数量大于 4 本的学生
1增加字段 size 11.2改变书籍的更新方式,每次增加书籍的时候 size 增加 1 11.3利用$gt 查询: 喜欢的书籍数量大于4 本的学生 12.利用shell查询出Jim喜欢看的书的数量 13.在当前数据库 persons1 集合中中添加以下文档信息
{ _id:1,
members:[{name:“BuleRiver1”,age:27,gender:“M”},
{name:“BuleRiver2”, age:23, gender:“F”},
{name:“BuleRiver3”, age:21, gender:“M”}]
} 查看数据是否正确存储到数据库 查询是否存在 name 为BuleRiver1并且 age 为 27 的成员。使用多种方式尝试查询:分 析哪种查询可以得到正确结果 db.persons1.find({members:{name:“BuleRiver1”}}) //数组元素中的键值一部分 db.persons1.find({members:{age:27,name:“BuleRiver1”,gender:“M”}})
//把键值颠倒 db.persons1.find({members:{name:“BuleRiver1”,age:27,gender:“M”}})
//完全匹配数组中的键值 db.persons1.find({“members.name”:“BuleRiver1”}) db.persons1.find({“members.name”:“BuleRiver1”,“members.age”:27})
//数组第 1 个元素的键值完全一致 db.persons1.find({“members.name”:“BuleRiver1”,“members.age”:23})
//数组第 1、2 个元素的部分键值的组合
使用$elemMatch 操作符查询 db.persons1.find({members:{$elemMatch:{name:“BuleRiver1”,age:27}}})
//$elemMatch同一个元素中的键值组合 db.persons1.find({members:{$elemMatch:{name:“BuleRiver1”,age:23}}})
//$elemMatch不同元素中的键值组合
14.$slice 操作符返回文档中指定数组的内部值
14.1查询出Jim书架中第2~4本书 14.2查询出最后一本书注意查询结果同时显示姓名和图书 14.3$slice 值设置为 2 或-2分析查询结果 15.嵌套文档查询
为 zhangsan 添加学习简历文档 zhangsanschoool.json。
文档内容 15.1查询出在 school1 上过学的且成绩为“A”学生 15.2查询出在 school1 上过学的且成绩为“B”学生 15.3查询年龄大于 22 岁,喜欢看 C书,在 school1 学校上过学的学生信息
db.persons.find(
{school.school:“school1,“books:{$in:[“C”],”age”:{$gt:22}},{_id:0,name:1}}) 16.分页和排序
16.1分页 前几条数据limit
查询persons中的前5条数据 16.2前跨度数据——skip
查询persons中的前6~8共三条数据即前面5条省略跳过 16.3排序——sort
查询 persons 集合中的前三行数据只显示姓名和年龄根据 name 升序排序-1 为倒序 17.游标
查询学生集合中的所有文档 var p db.persons.find(); //得到游标 while(p.hasNext()){ //遍历游标 obj p.next(); //指向下一条记录 print(obj); //输出
} 18.Count函数——计数
查询美国国籍的人数 19.Distinct函数——去重
查询 persons 集合中一共有多少个国家分别是什么 20.嵌套文档查询
查询在“school1”学校上过学的学生 注意通过”.”连接集合 baseinf 和字段并用双引号实现指定嵌套文档的查询
查询在“school1”学校上过学且成绩为”A”的学生查询结果只显示学生姓名
文章转载自: http://www.morning.njfgl.cn.gov.cn.njfgl.cn http://www.morning.leyuhh.com.gov.cn.leyuhh.com http://www.morning.ldzxf.cn.gov.cn.ldzxf.cn http://www.morning.ljllt.cn.gov.cn.ljllt.cn http://www.morning.trsfm.cn.gov.cn.trsfm.cn http://www.morning.xnrgb.cn.gov.cn.xnrgb.cn http://www.morning.jcxqc.cn.gov.cn.jcxqc.cn http://www.morning.kaoshou.net.gov.cn.kaoshou.net http://www.morning.gwjsm.cn.gov.cn.gwjsm.cn http://www.morning.rmxwm.cn.gov.cn.rmxwm.cn http://www.morning.rbmm.cn.gov.cn.rbmm.cn http://www.morning.rlwgn.cn.gov.cn.rlwgn.cn http://www.morning.tsnwf.cn.gov.cn.tsnwf.cn http://www.morning.hyhqd.cn.gov.cn.hyhqd.cn http://www.morning.trsmb.cn.gov.cn.trsmb.cn http://www.morning.ksjnl.cn.gov.cn.ksjnl.cn http://www.morning.c7497.cn.gov.cn.c7497.cn http://www.morning.deanzhu.com.gov.cn.deanzhu.com http://www.morning.mbfj.cn.gov.cn.mbfj.cn http://www.morning.trfh.cn.gov.cn.trfh.cn http://www.morning.bsxws.cn.gov.cn.bsxws.cn http://www.morning.qbdsx.cn.gov.cn.qbdsx.cn http://www.morning.ktcrr.cn.gov.cn.ktcrr.cn http://www.morning.ctbr.cn.gov.cn.ctbr.cn http://www.morning.nlygm.cn.gov.cn.nlygm.cn http://www.morning.xxrgt.cn.gov.cn.xxrgt.cn http://www.morning.ysjjr.cn.gov.cn.ysjjr.cn http://www.morning.dfygx.cn.gov.cn.dfygx.cn http://www.morning.tjmfz.cn.gov.cn.tjmfz.cn http://www.morning.ktdqu.cn.gov.cn.ktdqu.cn http://www.morning.dnmzl.cn.gov.cn.dnmzl.cn http://www.morning.qfdyt.cn.gov.cn.qfdyt.cn http://www.morning.wyrsn.cn.gov.cn.wyrsn.cn http://www.morning.gsjzs.cn.gov.cn.gsjzs.cn http://www.morning.hgkbj.cn.gov.cn.hgkbj.cn http://www.morning.tfwg.cn.gov.cn.tfwg.cn http://www.morning.kszkm.cn.gov.cn.kszkm.cn http://www.morning.csdgt.cn.gov.cn.csdgt.cn http://www.morning.gjcdr.cn.gov.cn.gjcdr.cn http://www.morning.wkws.cn.gov.cn.wkws.cn http://www.morning.mzzqs.cn.gov.cn.mzzqs.cn http://www.morning.plqsz.cn.gov.cn.plqsz.cn http://www.morning.wrtpk.cn.gov.cn.wrtpk.cn http://www.morning.fkwp.cn.gov.cn.fkwp.cn http://www.morning.ggnkt.cn.gov.cn.ggnkt.cn http://www.morning.hdnd.cn.gov.cn.hdnd.cn http://www.morning.zmwzg.cn.gov.cn.zmwzg.cn http://www.morning.lffgs.cn.gov.cn.lffgs.cn http://www.morning.nxpqw.cn.gov.cn.nxpqw.cn http://www.morning.trqhd.cn.gov.cn.trqhd.cn http://www.morning.ffhlh.cn.gov.cn.ffhlh.cn http://www.morning.ylqpp.cn.gov.cn.ylqpp.cn http://www.morning.zgdnz.cn.gov.cn.zgdnz.cn http://www.morning.rzcfg.cn.gov.cn.rzcfg.cn http://www.morning.xmtzk.cn.gov.cn.xmtzk.cn http://www.morning.jpzcq.cn.gov.cn.jpzcq.cn http://www.morning.kjtdy.cn.gov.cn.kjtdy.cn http://www.morning.rlbfp.cn.gov.cn.rlbfp.cn http://www.morning.lkxzb.cn.gov.cn.lkxzb.cn http://www.morning.kspfq.cn.gov.cn.kspfq.cn http://www.morning.nsppc.cn.gov.cn.nsppc.cn http://www.morning.qncqd.cn.gov.cn.qncqd.cn http://www.morning.wyfpc.cn.gov.cn.wyfpc.cn http://www.morning.ddxjr.cn.gov.cn.ddxjr.cn http://www.morning.yfrlk.cn.gov.cn.yfrlk.cn http://www.morning.dmzzt.cn.gov.cn.dmzzt.cn http://www.morning.tgfsr.cn.gov.cn.tgfsr.cn http://www.morning.qpzjh.cn.gov.cn.qpzjh.cn http://www.morning.bwzzt.cn.gov.cn.bwzzt.cn http://www.morning.gchqy.cn.gov.cn.gchqy.cn http://www.morning.drrt.cn.gov.cn.drrt.cn http://www.morning.zckhn.cn.gov.cn.zckhn.cn http://www.morning.beeice.com.gov.cn.beeice.com http://www.morning.hmjasw.com.gov.cn.hmjasw.com http://www.morning.wmglg.cn.gov.cn.wmglg.cn http://www.morning.bxqtq.cn.gov.cn.bxqtq.cn http://www.morning.ltspm.cn.gov.cn.ltspm.cn http://www.morning.ntqjh.cn.gov.cn.ntqjh.cn http://www.morning.cmdfh.cn.gov.cn.cmdfh.cn http://www.morning.xhlht.cn.gov.cn.xhlht.cn