$exists tidak didukung dalam aggregate kueri MongoDB . Jadi dalam aggregate kueri alih-alih $exists dapat menggunakan $ifNull .
sintaks:
{ $ifNull: [ <expression>, <replacement-expression-if-null> ] }
Diperbarui:
untuk mendapatkan b nilai sebagai true atau false dapat mencoba kueri ini
db.test.aggregate([
{
$project: {
b: {
$cond: [
{$ifNull: ['$b', false]}, // if
true, // then
false // else
]
}
}
}
])
Penjelasan:
b = $cond: [ 'if condition satisfied', 'then true', 'else false' ];
di mana condition = {$ifNull: ['$b', false]} Di sini jika $b tidak ada maka condition = false jika tidak condition = true .
jadi jika condition = true lalu kembalikan lalu hasil itu artinya b = true
jika condition = false lalu kembalikan hasil lain berarti b = false