1 回答

TA貢獻(xiàn)1943條經(jīng)驗(yàn) 獲得超7個(gè)贊
在這種情況下,您可以使用聚合。首先,添加字段代表項(xiàng)目?jī)r(jià)格與$addFields和$sum 的總和,然后查找文檔中該字段符合您的條件。就像是:
MyObj.aggregate([
? {
? ? $addFields: {
? ? ? total: {
? ? ? ? $sum: "$items.price"
? ? ? }
? ? }
? },
? {
? ? $match: {
? ? ? total: {
? ? ? ? $gte: 160,
? ? ? ? $lte: 200
? ? ? }
? ? }
? },
])
編輯:如果你只想使用find()
,你可以嘗試$expr:
MyObj.find({
? $expr: {
? ? $and: [
? ? ? {
? ? ? ? $gte: [
? ? ? ? ? {
? ? ? ? ? ? $sum: "$items.price"
? ? ? ? ? },
? ? ? ? ? 160
? ? ? ? ]
? ? ? },
? ? ? {
? ? ? ? $lte: [
? ? ? ? ? {
? ? ? ? ? ? $sum: "$items.price"
? ? ? ? ? },
? ? ? ? ? 200
? ? ? ? ]
? ? ? }
? ? ]
? }
})
添加回答
舉報(bào)