2016-07-07 9 views
0

Verwenden Sie $ Projekt-Operator und wollen zwei Felder Ergebnis und eine Zeichenfolge zu ihnen verketten.

'check_concat'=>array('$concat'=>'$pickup_delivery_date_and_time_to','cheema'), 

geben Ausgang als Ausnahme

127.0.0.1:27017: exception: this object is already an operator expression, and can't be used as a document expression (at '0') 
+0

Dies kann Ihnen die genauen Bezeichnungen der used.https helfen: //docs.mongodb.com/manual/reference/operator/aggregation/project/ – Dileephell

Antwort

0

Die korrekte Syntax folgt, zum Beispiel:

db.collection.aggregate([ 
    { 
     "$project": { 
      "check_concat": { 
       "$concat": ["$pickup_delivery_date_and_time_to", "cheema"] 
      } 
     } 
    } 
]) 

in PHP, übersetzen, dies zu

<?php 
$m = new MongoClient("localhost"); 
$c = $m->selectDB("test")->selectCollection("collection"); 
$ops = array(
    array(
     "$project" => array(
      "check_concat" => array(    
       "$concat" => array("$pickup_delivery_date_and_time_to", "cheema") 
      ) 
     ) 
    ) 
); 
$results = $c->aggregate($ops); 
var_dump($results); 
?> 
+0

Danke @chridam Es funktioniert jetzt nach Ihrem Beispiel. Cheers Vielen Dank. –

Verwandte Themen