2016-07-14 4 views
0

Verwenden von Mongodb und versuche, einen bestimmten Wert aus einer Sammlung in der Datenbank zu bekommen. Ich bin in der Lage, den kompletten Exportgenerieren ein bestimmtes Schlüsselpaar von Mongodb von UNIX Shell

mongoexport --db database --collection name 

mit zu bekommen, aber der Ausgang ist eine große Datei, und ich versuche in ihm einen bestimmten Satz von Schlüssel/Paar zu bekommen.

ex: "Name": "Value" 

gibt es mehrere Namen und ich muss nur alle Namen in der Sammlung drucken.

Was wäre die Befehlssyntax von einer UNIX-Shell?

Ich schaute this, aber das ist von mit in der Mongo-Shell.

dank

Antwort

1

Um alle Felder aus der Sammlung yourCollection in MyDatabase anfordern:

mongo --quiet 127.0.0.1/MyDatabase --eval 'printjson(db.yourCollection.find().toArray());' 

nur Felder name Feld aus der Sammlung bitten yourCollection in MyDatabase:

mongo --quiet 127.0.0.1/MyDatabase --eval 'printjson(db.yourCollection.find({},{"_id":0,"name":1}).toArray());' 
+0

danke - genau das, was ich brauchte - und sehr einfach von hier aus zu formatieren. – hypermails

0

Wenn Ihr Ziel ist es, Dokumente zu exportieren, um eine bestimmte Bedingung aus der Datenbank übereinstimmt, können Sie Übergeben Sie eine Abfrage an mongoexport mit dem Parameter -q. Beispiel:

mongoexport -d db -c coll -q '{"Name":"Value"}' 

Dadurch werden alle Dokumente exportiert, die das Feld "Name" mit dem Wert "Value" enthalten.

Sie können auch den Parameter --quiet an mongoexport übergeben, wenn Sie die Ausgabe ohne informativen Inhalt bevorzugen, z. B. die Anzahl der exportierten Dokumente.

Weitere Informationen zum Tool mongoexport finden Sie unter https://docs.mongodb.com/manual/reference/program/mongoexport/.

Verwandte Themen