我想根据下面给出的条件动态分配$match键:
let memberField = filter == "Agent" ? "user" : "admin"; // memberField = "user"
db.aggregate(
[
{
$match: {
memberField: "12345"
}
}
]
)
我不会得到空洞的回应。
但是如果我像下面给出的那样将硬编码键传递给$match:
db.aggregate(
[
{
$match: {
user: "12345"
}
}
]
)
这里我得到了各自的结果。
那么如何传递动态键呢?
请查看计算属性名称
。
db.aggregate([
{
$match: {
[memberField]: "12345"
}
}
])