[MongoDB] Type “it” for more が面倒な場合
2014年3月12日
MongoDB コンソールで db.collection.find() をしても、全行は出力されない。
> db.somecollection.find() { "_id" : ObjectId("52b0083902b845c0bc000001") } { "_id" : ObjectId("530c3544f5baead709468da5") } { "_id" : ObjectId("5315614b5d28a84c560e5dfa") } { "_id" : ObjectId("53159c18339971ce658f6ae4") } { "_id" : ObjectId("5316b3871355b09a7a35ea88") } { "_id" : ObjectId("5319b8b25e96d9810e330898") } { "_id" : ObjectId("5319b9fd2458c0860e672211") } { "_id" : ObjectId("5319baf82458c0860e67221b") } { "_id" : ObjectId("5319be9c464e9fd00e00d138") } { "_id" : ObjectId("5319c03c0ee2a2050f647e93") } Type "it" for more
この場合、Type "it" for more とある通り、"it" を入力すると、都度残りの行が出力される。
とはいえ、都度打つのは面倒なので、その対策の話です。
対策1: DBQuery.shellBatchSize
これで最大出力行数を変更出来る。デフォルトは 20。
> DBQuery.shellBatchSize = 100
対策2: toArray()
> db.somecollection.find().toArray()
蛇足: どっちも微妙なので
チェインしたら全行出るようなメソッドは無いっすかねー?