我试图通过编写以下if条件的mongodb投影查询来查找数组是否为空。
localhost
基本上,我正在尝试检查'$ NonExpiredAllotmentsOfRoom'是否为空。如果为空,则应返回空数组,否则应返回'$ NonExpiredAllotmentsOfRoom'的最后一个元素。上面的代码抛出错误消息“无法识别的表达式'$ NonExpiredAllotmentsOfRoom”。请帮忙 !!!
答案 0 :(得分:1)
RecentAllotmentsDetails => {
$cond: { if: { $ne: [
"$NonExpiredAllotmentsOfRoom", [] ] },
then: ['$arrayElemAt' =>
['$NonExpiredAllotmentsOfRoom', -1 ]] ,
else: []
}
}
在您的管道中尝试