Mongo db agrégation de plusieurs conditions

Je veux un projet de collecte de l'application de l'exportation d'une valeur uniquement si un champ est à l'intérieur d'une plage.

Sorte de:

db.workouts.aggregate({
 $match: { user_id: ObjectId(".....") }
},
{
 $project: { 
        '20': { $cond: [ {$gt: [ "$avg_intensity", 20]} , '$total_volume', 0] }
    }    
 })

J'ai besoin d'obtenir la valeur uniquement si le avg_intensity est à l'intérieur d'une certaine fourchette. Je fais alors le groupe et la somme sur la projection résultat.

Ce que je suis en train de faire est l'application d'un $gt et $lt filtre mais sans beaucoup de succès.

db.workouts.aggregate(
{
   $match: { user_id: ObjectId("....") }
},
{
$project: { 
        '20': { $cond: [ [{$gt: [ "$avg_intensity", 20]}, {$lt: [ "$avg_intensity", 25]}] ,    '$total_volume', 0] }
    }    
 })

Comment puis-je appliquer les deux $gt et $lt conditions?

OriginalL'auteur Andrea Campolonghi | 2014-04-23