我在MongoDB中有一组电子邮件,其中包含一个包含json数组的字段。
如何了解发件人和收件人,如何查找两人之间交换的所有电子邮件?我需要做一些像
这样的事情 db.email.find({"from": i.st20@gmail.com", "tos":"ron@gmail.com")
但是我找不到写这个查询的正确方法:(
> db.emails.findOne()
{
"from" : {
"real_name" : "it",
"address" : "i.st20@gmail.com"
},
"tos" : [
{
"real_name" : null,
"address" : "ron@gmail.com"
}
],
}
答案 0 :(得分:1)
使用“from.address”和“tos.address”:
db.emails.find({"from.address" : "i.st20@gmail.com", "tos.address" : "ron@gmail.com"})
答案 1 :(得分:1)
每个字段都被视为json,我们可以通过“。”来精确预期值。 :
db.emails.find({"tos.address" : "ron@gmail.com", "from.address":"i.st20@gmail.com"})
答案 2 :(得分:1)
From和To是对象,其中的数据可以通过.
运算符访问。
所以查询将是:
db.emails.find({"from.address" : "i.st20@gmail.com", "tos.address" : "ron@gmail.com"}).