#javascript #node.js #mongodb #aggregation-framework #aggregate
#javascript #node.js #mongodb #агрегация-фреймворк #агрегат
Вопрос:
Я хочу назначить ключ $ match динамически в соответствии с моим условием, которое я привел ниже:
let memberField = filter == "Agent" ? "user" : "admin"; // memberField = "user"
db.aggregate(
[
{
$match: {
memberField: "12345"
}
}
]
)
Здесь я не получаю пустой ответ.
Но если я передам жесткий ключ в $ match, как указано ниже:
db.aggregate(
[
{
$match: {
user: "12345"
}
}
]
)
Здесь я получаю соответствующий результат.
Итак, как передать динамический ключ?
Ответ №1:
Взгляните на Computed property names
.
db.aggregate([
{
$match: {
[memberField]: "12345"
}
}
])
Комментарии:
1. @harshadkapei Проблем нет. Если это решит вашу проблему, пожалуйста, примите ответ, нажав на галочку, нужно получить эти интернет-баллы! 🙂
2. Если этот вопрос полезен сообществу разработчиков, пожалуйста, примите вопрос, нажав стрелку вверх.