架构师系列-mongo(三)-高级查询

本文介绍了如何在MongoDB中准备数据,安装必要的工具包,下载测试数据,并详细讲解了各种查询条件、关系表达式、逻辑表达式、排序、分页以及统计查询(count和distinct)的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

高级查询

准备数据

安装工具包

下载工具包

因为下载的MongoDB是不包含导入导出工具包的,到下载页面选择版本下载即可

mongoDB工具包下载地址

 

选择符合的版本下载即可

wget https://fastdl.mongodb.org/tools/db/mongodb-database-tools-rhel70-x86_64-100.3.1.tgz

安装工具包
# 解压安装包
tar -zxvf mongodb-database-tools-rhel70-x86_64-100.3.1.tgz
# 移动bin目录中所有文件到mongodb安装包的bin目录
mv -f mongodb-database-tools-rhel70-x86_64-100.3.1/bin/* bin/
将MongoDB工具包中的文件复制到 mongodb安装目录的 bin目录

导入测试数据
下载测试数据
这里使用亚马逊官方提供的,下载地址 亚马逊测试数据

使用 wget 命令下载包含示例数据的 JSON 文件

wget http://media.mongodb.org/zips.json

导入数据
使用 mongoimport 命令将数据导入新数据库 (zips-db)

mongoimport --host 127.0.0.1:27017 --db zips-db --file zips.json

验证导入文档
导入完成后,使用 mongo 连接到 MongoDB 并验证数据是否已成功加载

mongo --host 127.0.0.1:27017
# 查看所有数据库
show dbs;
登录后检查发现所有的数据库都是存在的

并检查文档数据

# 切换到zips-db数据库
use zips-db;
# 查看数据库所有的集合
show tables;
#查询第一个文档的数据
db.zips.findOne({});
我们发现数据库已经成功导入

测试数据结构

导入的数据是亚马逊官方提供的,没有各个地区的人数统计,数据结构如下

_id city loc pop(万) state
数据ID号 城市名称 位置坐标 人数 所属哪个州

具体对应关系如下图

b326132854ad428b8124e46aacb27fa5.png 

关系表达式

刚才我们只学习了最基本的查询,下面我们看一下MongoDB的关系表达式

如果你熟悉常规的 SQL 数据,通过下表可以更好的理解 MongoDB 的条件语句查询:

操作 格式 范例 RDBMS中的类似语句
等于 {<key>:<value>} db.col.find({"by":"作者名称"}).pretty() where by = '作者名称'
小于 {<key>:{$lt:<value>}} db.col.find({"likes":{$lt:50}}).pretty() where likes < 50
小于或等于 {<key>:{$lte:<value>}} db.col.find({"likes":{$lte:50}}).pretty()
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值