如何解决如何匹配两个字段都不存在
- 我试图使用
$and
来表示两个字段均为空 - 这是代码
db.tweets_v2.aggregate({
{match:{$and:[{replyto_id:$exist:false},{replyto_id:$exist:false}]}
});
解决方法
修复很少,
- $ exist应该为
$exists
- 在
$exists
之前和之后缺少{}括号 - 匹配项应为
$match
- 聚合阶段从
[]
开始,而不是{}
db.tweets_v2.aggregate([
{
$match: {
$and: [
{ replyto_id: { $exists: false } },{ replyfrom_id: { $exists: false } } // change your second field name
]
}
}
])
,
实际上不需要$and
,这个也可以使用:
db.tweets_v2.aggregate([
{
$match: {
replyto_id: { $exists: false },replyfrom_id: { $exists: false }
}
}
])
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。