Mongodb 按嵌入数组上的最后一个元素筛选查找
在MongoDB中,如何执行由应用于嵌入数组最后一个元素的谓词过滤的搜索 我知道如果我想在第一次做,我可以这样做:Mongodb 按嵌入数组上的最后一个元素筛选查找,mongodb,Mongodb,在MongoDB中,如何执行由应用于嵌入数组最后一个元素的谓词过滤的搜索 我知道如果我想在第一次做,我可以这样做: db.inventory.find( { 'instock.0.qty': { $lte: 20 } } ) 如图纸所示 当我不知道嵌入数组的确切大小时,如何编写查看最后一个元素的模拟查询?我们可以使用$arrayElemAt并将-1作为第二个参数传递给它,以获取数组中的最后一个元素 像这样的 db.collection.find({ $expr: { $gt: [
db.inventory.find( { 'instock.0.qty': { $lte: 20 } } )
如图纸所示
当我不知道嵌入数组的确切大小时,如何编写查看最后一个元素的模拟查询?我们可以使用$arrayElemAt并将-1作为第二个参数传递给它,以获取数组中的最后一个元素
像这样的
db.collection.find({
$expr: {
$gt: [
{
$arrayElemAt: ["$instock.qty", -1]
},
10
]
}
})
你可以在这里测试
希望能有帮助