MongoDB 查询 (两个字段差值作为条件查询)

浏览:21日期:2023-07-05

问题描述

字段name stringx inty int表记录namexy jhon12 lily21 gan32 查询结果

查询所有 x > y 的所有 name

问题解答

回答1:

db.collections.find({’$where’: 'this.x > this.y'}, {’name’: 1})回答2:

这样还能按照x y 的差值排序

db.collection.aggregate( [{$project : { _id: ’$name’, val: { $subtract : [ '$x', '$y' ] }, x: ’$x’, y: ’$y’} }, {$match: {val: {$gt: 0}}}, {$sort: { val: -1 }} ])

相关文章: