MongoDB下查询数组的尝试记录

[root@sunrise16 bin]# ./mongo
MongoDB shell version: 2.0.0
connecting to: test

插入一个带有数组元素的文档。
> db.food.insert({"fruit": ["apple", "banana", "peach"]})
> db.food.find()
{ "_id" : ObjectId("4ea6a4ef0b12b1d429b4057f"), "fruit" : [ "apple", "banana", "peach" ] }

查询数组元素中包含某个值的文档。
> db.food.find({"fruit": "banana"})
{ "_id" : ObjectId("4ea6a4ef0b12b1d429b4057f"), "fruit" : [ "apple", "banana", "peach" ] }

> db.food.find({"fruit": {"$all": ["banana"]}})
{ "_id" : ObjectId("4ea6a4ef0b12b1d429b4057f"), "fruit" : [ "apple", "banana", "peach" ] }

查询匹配指定数组的文档。注意要完全相同,数量和顺序都不能有错,否则找不到。

> db.food.find({"fruit": ["banana"]})
> db.food.find({"fruit": ["apple", "banana", "peach"]})
{ "_id" : ObjectId("4ea6a4ef0b12b1d429b4057f"), "fruit" : [ "apple", "banana", "peach" ] }
> db.food.find({"fruit": ["banana", "apple", "peach"]})

查询数组元素中包含多个指定值的文档,全部包含,顺序无关。

> db.food.find({"fruit": {"$all": ["banana", "apple", "peach"]}})
{ "_id" : ObjectId("4ea6a4ef0b12b1d429b4057f"), "fruit" : [ "apple", "banana", "peach" ] }

查询包含多个值之一的文档。似乎无法实现!

> db.food.find({"fruit":["banna","cherry"]})
> db.food.find({"fruit":{"$all":["banna","cherry"]}})
> db.food.find({"fruit":{"$in":["banna","cherry"]}})

查询指定长度的数组。但不能查询指定长度范围的数组。

> db.food.find({"fruit": {"$size": 3}})
{ "_id" : ObjectId("4ea6a4ef0b12b1d429b4057f"), "fruit" : [ "apple", "banana", "peach" ] }
> db.food.find({"fruit": {"$size": 2}})
> db.food.find({"fruit": {"$size": 4}})
退出。
> exit
bye
[root@sunrise16 bin]#

下载igv报错:Error loading genome hg38raw.githubusercontent.com...如何解决? 🏆本文收录于 《全栈 Bug 调优(实战版)》 专栏。专栏聚焦真实项目中的各类疑难 Bug,从成因剖析 → 排查路径 → 解决方案 → 预防优化全链路拆解,形成一套可复用、可沉淀的实战知识体系。无论你是初入职场的开发者,还是负责复杂项目的资深工程师,都可以在这里构建一套属于自己的「问题诊断与性能调优」方法论,助你稳步进阶、放大技术价值 。 阅读详情

相关推荐

comsol 多物理场仿真流程-以开关柜为例

1、主要方法 在SolidWorks中对于开关柜的内部与外部结构进行建模,生成能够导入软件计算的3D模型。将SolidWorks中的模型导入comsol软件中,设置参数进行多物理场耦合仿真。 1、具体步骤 删除高压开关柜中对其内部电磁环境无较大影响的结构,如低压测量柜、断路器内部结构等。 导入模型:将厂家提供的3D模型转化为solidworks结构模型。 修复模型:修复已转化模型中转化错误的部分、修复已转化模型中非实体部分、修复已转化模型中重叠实体部分 化简模型:去除过于...

健忘16的博客 7020

mongodb c driver的使用总结(1)

mongodb c driver的使用总结(1) 1、初始化mongoc 非线程安全,只需调用一次 mongoc_init(); 2、设置日志回调 static void log_handler (mongoc_log_level_t  log_level,     const char* log_domain, const char* message, voi

linuxheik的专栏 3033

神经网络学习笔记-波尔兹曼(Boltzmann)机

Boltzmann机是一种反馈随机神经网络 两种输出状态,单极性0或1。输出状态的取值根据概率统计法则决定,这种概率统计法则类似Boltzmann分布,部分反馈 它在神经元状态变化中引入了统计概率,网络的平衡状态服从Boltzmann分布,网络运行机制基于模拟退火算法。 离散Hopfield神经网络+模拟退火+隐单元=Boltzman机 DHNN全反馈,转移函数:符号函数 BM机网络拓扑...

求易学堂的博客 2612

MongoDB 查询时返回指定的字段

对像我一样的新手来说,想要只查询某(几个)字段,一些教程说的不是很详细。 首先我们看一下mongoDB 查询时用的find方法: db.collection.find(query, projection) 其中:    query :可选,使用查询操作符指定查询条件    projection :可选,使用投影操作符指定返回的键。查询时返回文档中所有键值, 只需省略该参数即可(默认省略)...

beta_xiyan的博客 1万+

2026年7月19日 从可插拔到共封装:技术路线研究报告

AI 算力的爆发正在重写数据中心光互连的技术路线。本报告对当前并存的四代光互连架构——

weixin_51184047的博客 584

【GlobalMapper精品教程】038:模拟水位上升(洪水淹没分析)案例教程

基于数字高程模型 ( DEM )格网模型,实现给定水深情况下洪水淹没区的计算模型,讨论洪水淹没演进过程可视化实现的关键技术,以三维可视化方式,动态而形象地模拟在指定洪水水位下的洪水淹没演进过程。

智慧空间实验室 2884

mongodb的c驱动使用

1. 程序安装 预安装 需要先安装依赖库OpenSSL,来建立ssl连接到MongoDB RedHat / Fedora系统: $ sudo yum install pkg-config openssl-devel cyrus-sasl-devel Debian / Ubuntu系统: $ sudo apt-get install pkg-config libssl-dev libsa

陈嘉怡的专栏 1万+

想使用dify实现docx文档的自动生成?试了一圈,感觉还是根据python-docx更靠谱

在软件开发过程中,需求文档、设计文档等材料的编写是每个开发者都绕不开的工作。最近笔者接到一个需要批量生成标准化需求文档的任务,尝试了目前热门的低代码工具Dify后,发现对于稍微复杂格式的文档生成需求(例如文本居中这么简单的需求),最终还是回归到基于python-docx库的解决方案。本文将分享两种技术路线的对比实践。

xiezhipu的博客 2547

投影查询

sujiacheng_123的博客 742

vs2017配置liblas库+测试代码

之前已经配置好pcl(vs2017配置pcl),可以单独配置liblas,也可以在原有pcl属性表的基础上继续配置

孙悟空 4022

YOLOv8实战教程:从模型训练到改进的全流程指南

回顾这段YOLOv8的实战历程,从最初的模型训练到后来的各种改进尝试,我深刻体会到目标检测技术的魅力与挑战。YOLOv8作为一款优秀的框架,不仅易用性强,而且具备很强的可扩展性,让我能在其基础上不断创新。未来,我计划在以下几个方向继续探索:一是将YOLOv8与多模态技术结合,尝试实现图像与文本的联合目标检测;二是深入研究自监督学习在YOLOv8中的应用,减少对标注数据的依赖;三是探索YOLOv8在更广泛场景的部署,如机器人、自动驾驶等。

LXY_LOVE36的博客 279

mongoDB学习笔记——在C 中查询

mongoDB学习笔记——在C 中查询

hddfuuh的博客 653

YOLO11-Seg优化:卷积变体系列篇 | 动态蛇形卷积(Dynamic Snake Convolution) | ICCV2023

动态蛇形卷积(Dynamic Snake Convolution),增强微小特征提取能力,引入到YOLO11-Seg,与C3k2结合实现二次创新

会AI的学姐 368

mongodb java 嵌套查询_MongoDB嵌套数组查询

我已将此问题作为对another问题的评论,并在mongodb-user上发布了question . 到目前为止没有回复,所以我要求另外提问 .如果该字段包含数组,则$ in运算符选择其字段包含数组的文档,该数组包含至少一个与指定数组中的值匹配的元素(例如,等)我正在使用:mongod --version:db version v2.2.2, pdfile version 4.5Thu May 3...

weixin_39752087的博客 795

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

mongoudb 等于_如何在MongoDB中查找大于或等于某个时间的记录?

我有一个像这样结构的MongoDB文档:{"_id": ObjectId("50cf904a07ef604c8cc3d091"),"lessons": {"0": {"lesson_name": "View and Edit Lists","release_time": ISODate("2012-12-17T00:00:00Z"),"requires_anim": false,"requires...

weixin_36053398的博客 791

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

mongodb java 去重复,从MongoDB 4.2数据库中删除重复项

I am trying to remove duplicates from MongoDB but all solutions find fail.My JSON structure:{"_id" : ObjectId("5d94ad15667591cf569e6aa4"),"a" : "aaa","b" : "bbb","c" : "ccc","d" : "ddd","key" : "057ce...

weixin_35231615的博客 271

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

mongo-将一个字段更新到另一个字段中

【代码】mongo-将一个字段更新到另一个字段中。

面朝大海,春暖花开 623

【MongoDB】一文带你快速掌握MongoDB文档插入和查询

一、单个文档插入 1. 语法格式 2. 参数 3. 示例 5. 提示 二、批量文档插入 1. 语法格式 2. 参数 3. 示例 4. 提示 三、文档的基本查询 1. 语法格式 2. 参数 3. 示例 4. 提示 4. 投影查询

HHX_01的博客 3329

mongodb笔记——查询

mongdb查询方式,查询器,游标,$where 各种操作符的记录,数组查询

蓝骑的博客 749

【MongoDB】多级嵌套数组的操作 含Mongo Shell 和 MongoTemplate的增删改细节

本文整理了操作多级嵌套的数组的Mongo Shell、js脚本,以及使用MongoTemplate的操作方式,操作嵌套数据需要使用到 MongoDB 的两个特性: $[]和arrayFilters,本文中的数据一共嵌套了两层数组,包含了一级和二级嵌套数组的操作,篇幅较长,非常详细,快来看看吧!

积木成林,聚沙成塔 3859

mongodb 数组更新

原因:线上数据中,数组项某个value存在前置空格 # 数据格式如下(手动输入的,json串格式可能有问题): { "categoryId":99999, "categoryType":23, "keyValue":[ {"key":"key1","value":" value1"}, {"key":"key2","value":"value2"}, {"key":"key3","value...

龙城之家的博客 1183

mongodb 分组查询统计去掉重复的记录

mongodb 分组查询统计去掉重复的记录

hfdchhu的博客 1075

线上一个数组查询遇到的坑

背景 中午12点半,接到了线上MongoDB 数据库异常的告警通报: “CPU不间断飙升到百分百,业务也相应出现了抖动现象。” 通过排查数据库主节点的日志,发现了这样的一个慢语句: 2019-03-07T10:56:43.470+0000 I COMMAND [conn2544772] command nlp.ApplicationDevice appName: "nlp" comman...

华为云官方博客 1768

mongodb 随机查询

mongodb的随机查询不像mysql一样可以利用rand()函数,取随机数查询数据,mongodb在查询中,并没有类似rand()的查询方法 (mongodb当前版本1.6.3) 题外话: mysql的rand在执行效率上有一定问题 sql 需要优化 详见 下面是一个具体的例子和解决方案 部分参照官网的mongodb cookbook 文章 The Random Attri

jklfjsdj79hiofo的专栏 6953

把一个数组的值赋给另一个数组_一个数组查询引发的坑

背景中午12点半,接到了线上MongoDB 数据库异常的告警通报:“CPU不间断飙升到百分百,业务也相应出现了抖动现象。”通过排查数据库主节点的日志,发现了这样的一个慢语句:从语句中初步判断,“keysExamined”和docsExamined显示扫描了100W 条记录,其中也用到了下面的索引:跟研发兄弟确认过后,该查询的目的是 找到某些应用下带指定标签的设备信息,按ID分段去获取,...

weixin_39566593的博客 523
上一篇: MongoDB非正常关闭后修复记录
下一篇: Bash字符串处理(与Java对照) - 23.字符串替换、子串删除、子串截取
codingstandards
博客等级 码龄16年 12粉丝 3原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值