mongodb - mongodb,如何在查询中使用 $not 过滤器
问题描述
我有一个相当简单的查询,我试图在 mongodb compass 中运行:
{ $and: [ { Source: "hostname" }, { Message: { $not: /.*unexpected data.*1234.*/ } } ] }
基本上,我的文档模型包含一个Source
字段和一个Message
字段。
我需要查询 Source 等于给定“主机名”且消息不包含“意外数据...1234”的所有文档
当我不在正则表达式中包含 $not 过滤器时,一切正常...所以我得到了包含此消息的所有文档...但是现在我需要所有其他不包含此消息的消息...并且我不知道如何正确使用 $not 。
MongoDb 手册中给出的示例仅显示将 $not 与一个语句一起使用......但由于某种原因,即使这对我也不起作用......
{ Message: { $not: /.*unexpected data.*1234.*/ } }
同样,如果没有 $not ,它也可以正常工作......我错过了什么?
编辑:
这是我正在谈论的图像,将这个过滤器放在 MongoDb Compass 中,它表明过滤器不正确...... MongoDb Compass 是否由于某种原因无法运行复杂的过滤器?
解决方案
推荐阅读
- sql - 在 asp.net core 3 中创建和播种多对多关系
- php - 通过 DocuSign 电子签名 API 在模板中设置复选框的值
- c++ - Visual Studio 中的访问异常和堆栈溢出错误
- firebase - 如何在flutter中管理离线firebase数据库?
- php - Laravel 5.8 - 419 页面已过期 - docker 容器
- mule - 我们需要根据每个 no 的 lastmodified 日期过滤记录(例如:DB1902718),但不是按照示例的取消状态
- c - 尝试从文件中读取特定格式
- javascript - 如何使用 document.body.appendChild 将对象添加到脚本标签
- javascript - 如何从 GrapesJS 中的 Dom 组件更改类元素
- html - iPad Pro 光标悬停的 CSS 状态