Database Reference
In-Depth Information
Lesen: Mehr Spaß mit Mongo
Vorhin haben wir find ohne Parameter aufgerufen, um alle Dokumente ab-
zurufen. Um ein bestimmtes Dokument abzurufen, müssen Sie nur eine _ id -
Property setzen. _ id ist vom Typ ObjectId , weshalb Sie für die Query einen
String über die Funktion ObjectId(str) entsprechend umwandeln müssen.
db.towns.find({ " _ id" : ObjectId( "4d0ada1fbb30773266f39fe4" )})
{
" _ id" : ObjectId( "4d0ada1fbb30773266f39fe4" ),
"name" : "Punxsutawney" ,
"population" : 6200,
"last _ census" : "Thu Jan 31 2008 00:00:00 GMT-0800 (PST)" ,
"famous _ for" :[ "phil the groundhog" ],
"mayor" :{ "name" : "Jim Wehrle" }
}
Die find() -Funktion akzeptiert auch einen optionalen zweiten Parameter:
ein fields-Objekt, mit dessen Hilfe sich die empfangenen Felder filtern las-
sen. Wenn Sie nur den Namen der Stadt brauchen (zusammen mit der _ id ),
übergeben Sie name mit dem Wert 1 (oder true ).
db.towns.find({ _ id : ObjectId( "4d0ada1fbb30773266f39fe4" ) }, { name : 1 })
{
" _ id" : ObjectId( "4d0ada1fbb30773266f39fe4" ),
"name" : "Punxsutawney"
}
Um alle Felder außer name abzurufen, setzen Sie name auf 0 (oder false oder
null ).
db.towns.find({ _ id : ObjectId( "4d0ada1fbb30773266f39fe4" ) }, { name : 0 })
{
" _ id" : ObjectId( "4d0ada1fbb30773266f39fe4" ),
"population" : 6200,
"last _ census" : "Thu Jan 31 2008 00:00:00 GMT-0800 (PST)" ,
"famous _ for" :[ "phil the groundhog" ]
}
Wie bei PostgreSQL können Sie mit Mongo Ad-hoc-Queries über Feldwerte,
Bereiche oder eine Kombination verschiedener Kriterien erzeugen. Um alle
Städte aufzuspüren, die mit dem Buchstaben P beginnen und weniger als
10000 Einwohner haben, können Sie einen Perl-kompatiblen regulären Aus-
druck (PCRE) 2 und einen Bereichsoperator verwenden.
2. http://www.pcre.org/
Search WWH ::




Custom Search