Python全系列 教程
3567个小节阅读:5931.5k
目录
鸿蒙应用开发
C语言快速入门
JAVA全系列 教程
面向对象的程序设计语言
Python全系列 教程
Python3.x版本,未来主流的版本
人工智能 教程
顺势而为,AI创新未来
大厂算法 教程
算法,程序员自我提升必经之路
C++ 教程
一门通用计算机编程语言
微服务 教程
目前业界流行的框架组合
web前端全系列 教程
通向WEB技术世界的钥匙
大数据全系列 教程
站在云端操控万千数据
AIGC全能工具班
A A
White Night
若要从集合中选择文档,可以使用 find()
或者findOne()
方法。若要选择集合中的所有文档,请将空文档作为查询筛选器文档传递给该方法。
编写语法为
xxxxxxxxxx
db.集合名.函数名()
函数名 | 含义 |
---|---|
find( <{条件文档}> ) | 查找到所有匹配数据 |
findOne( <{条件文档}> ) | 只返回匹配的第一个数据 |
语法 | 操作 | 格式 |
---|---|---|
$eq | 等于 | { |
$lt | 小于 | { |
$lte | 小于或等于 | { |
$gt | 大于 | { |
$gte | 大于或等于 | { |
$ne | 不等于 | { |
$or | 或 | {$or:[{},{}]} |
$in | 在范围内 | {age:{$in:[val1,val2]}} |
$nin | 不在范围内 | {age:{$nin:[val1,val2]}} |
举例
xxxxxxxxxx
db.person.find({age:{$gt:16}})
db.person.find({$or:[{age:{$gte:18}},{name:"zs"}])
使用//或$regex编写正则表达式
xxxxxxxxxx
db.person.find({name:/^zs/})
db.person.find({name:{$regex:'^zs'}}})
使用$where后面写一个函数,返回满足条件的数据
xxxxxxxxxx
db.person.find({$where:function(){return this.age>20}}) # 5.0版本不能用了
db.person.find({$where:"this.age==23"});
db.person.find("this.age >23");
db.person.find('this.country=="吴国" || this.age==23');
用于读取指定数量的文档
xxxxxxxxxx
db.集合名称.find().limit(NUMBER)
用于跳过指定数量的文档
xxxxxxxxxx
db.集合名称.find().skip(2)
用于对结果集进行排序
xxxxxxxxxx
db.集合名称.find().sort({字段:1,...})
用于统计结果集中文档条数
xdb.集合名称.find({条件}).count()
db.集合名称.count({条件})
db.stu.find({gender:true}).count()
db.stu.count({age:{$gt:20},gender:true})
判断是否有某个字段
xxxxxxxxxx
db.集合名称.find({'field':{$exists:true}})
去重
xxxxxxxxxx
db.集合名称.distinct(field)
db.集合名称.distinct(field,{过滤条件 })
首先插入一批文档,再进行查询
xxxxxxxxxx
db.person.insert([{"name":"司马懿","country":"魏国","age":35},
{"name":"张辽","country":"魏国","age":34},
{"name":"徐晃","country":"魏国","age":24},
{"name":"夏侯惇","country":"魏国","age":23},
{"name":"夏侯渊","country":"魏国","age":23},
{"name":"庞德","country":"魏国","age":23},
{"name":"张郃","country":"魏国","age":34},
{"name":"李典","country":"魏国","age":41},
{"name":"乐进","country":"魏国","age":34},
{"name":"典韦","country":"魏国","age":12},
{"name":"曹洪","country":"魏国","age":21},
{"name":"曹仁","country":"魏国","age":11},
{"name":"诸葛亮","country":"蜀国","age":20},
{"name":"关羽","country":"蜀国","age":32},
{"name":"张飞","country":"蜀国","age":23},
{"name":"马超","country":"蜀国","age":53},
{"name":"黄忠","country":"蜀国","age":23},
{"name":"赵云","country":"蜀国","age":32},
{"name":"魏延","country":"蜀国","age":42},
{"name":"关平","country":"蜀国","age":12},
{"name":"周仓","country":"蜀国","age":42},
{"name":"关兴","country":"蜀国","age":23},
{"name":"张苞","country":"蜀国","age":12},
{"name":"周瑜","country":"吴国","age":32},
{"name":"吕蒙","country":"吴国","age":11},
{"name":"甘宁","country":"吴国","age":23},
{"name":"太史慈","country":"吴国","age":23},
{"name":"程普","country":"吴国","age":24},
{"name":"黄盖","country":"吴国","age":28},
{"name":"韩当","country":"吴国","age":23},
{"name":"周泰","country":"吴国","age":29},
{"name":"蒋钦","country":"吴国","age":19},
{"name":"丁奉","country":"吴国","age":17},
{"name":"徐盛","country":"吴国","age":27}
])
实时效果反馈
1.MongoDB查询集合所有文档的命令是?
A db.collection.find({id:0})
B db.collection.findAll()
C db.collection.find({})
D 以上都不对
答案
1=>C