【MongoDB】MongoExport如何过滤数据导出

问题

使用MongoDB处理导出数据时,想增加数据过滤操作。

例如:导出所有isGirltrue的所有数据。

分析

mongoexport说明文档中找到了query 字段和queryFile字段,用来进行数据查询匹配导出。

query 字段 后面直接跟 json 格式数据。
queryFile 字段 后面跟 存储json数据的文件路径。

注意query 后的json 数据一定要注意双引号的转义

解决

1、先直接导出数据表中所有数据做为对比:

bash 复制代码
mongoexport --host "127.0.0.1" --port "27017" --authenticatinDatabase "admin" -u admin -p password -d class -c student_info -o \Data\student_info.json

执行结果:141条数据记录

2、使用query字段进行数据过滤

bash 复制代码
mongoexport --host "127.0.0.1" --port "27017" --authenticatinDatabase "admin" -u admin -p password -d class -c student_info -q "{\"isGirl\":true}" -o \Data\student_info.json

执行结果:61条数据记录

注意 :这里一定要注意双引号的转义 !!不然就会报错无法解析json数据:

3、使用queryFile字段进行数据过滤

先将json 数据存储在txt 文件中:

然后使用queryFile字段进行过滤:

bash 复制代码
mongoexport --host "127.0.0.1" --port "27017" --authenticatinDatabase "admin" -u admin -p password -d class -c student_info --queryFile "1.txt" -o \Data\student_info.json

执行结果:61条数据记录

那接下来匹配一下isGirlfalse 的数据记录吧:

再次执行查看结果:80条数据记录

ok!搞定!

相关推荐
程序猿ZhangSir25 分钟前
详解了解 Redis IO多路复用底层原理,Select,poll,epoll三者的区别?
数据库·redis·缓存
U-52184F6926 分钟前
深度解析:从 Qt 的 Q_D 宏说起,C++ 工业级 SDK 是如何保证 ABI 稳定性的
数据库·c++·qt
Gauss松鼠会26 分钟前
【GaussDB】LLVM技术在GaussDB等数据库中的应用
大数据·数据库·架构·数据库开发·gaussdb·llvm
IMPYLH33 分钟前
Linux 的 dir 命令
linux·运维·服务器·数据库
wfsm1 小时前
mysql事务
数据库·mysql
SadSunset1 小时前
第一章:Redis 入门介绍
数据库·redis·缓存
weixin_464307631 小时前
QT智能指针
java·数据库·qt
王仲肖2 小时前
PostgreSQL VACUUM 与 AUTOVACUUM 深度解析
数据库·postgresql
电商API&Tina2 小时前
电商数据采集API接口||合规优先、稳定高效、数据精准
java·javascript·数据库·python·json
lifewange2 小时前
SQL 中 IN 和 AND 可以搭配使用么?
数据库·sql