2017-01-24 4 views
1

In einem Projektschritt einer Mongo Aggregation, würde Ich mag ein boolean Feld zu erzeugen, wie:Mongo Projekttest, wenn der Wert in Array

{ 
    $project: { 
    isInArray: { $cond: [ 
     { $in: ['$_id', ids] }, 
     { $const: true }, 
     { $const: false }, 
    ] }, 
    }, 
}, 

aber dies scheitert mit

invalid operator $in 

ich konnte keine Dokumentation über die korrekte Syntax

Antwort

2

Sie können $setIsSubset Operator

verwenden finden
+1

Funktioniert gut, danke! – Guig

+0

Weißt du, ob es Leistungseinbußen gibt, als ob ein Index in '_id' sich nicht daran gewöhnen könnte? – Guig

+1

@Guig afaik Aggregation kann Indizes nur für $ Match-Operation verwenden, wenn es zuerst geht –

Verwandte Themen