2010-09-14 67 views

回答

285
+0

有沒有辦法讓這個持久? – 2016-06-21 12:20:03

+2

@LukaszWiktor是的,您可以創建一個$ HOME/.mongorc.js文件並將該shellBatchSize設置放在那裏。我的查詢批量大小設置和啓用rs.slaveOk()。它的使用情況在通過命令行使用--eval時也略有不同。請參閱:https://docs.mongodb.com/manual/mongo/#mongorc-js-file – 2016-12-03 17:56:00

+0

太棒了!謝謝@matiaselgart – 2016-12-03 17:58:25

102

您可以使用it外殼的內部迭代在未來20個結果。只要輸入it,如果你看到「有更多」,你會看到接下來的20個項目。

+29

哦它實際上是關於如何打印出所有不使用'it' – 2010-09-14 01:37:16

+12

感謝哈夫丹,你兩次你的用戶名會說你是! – 2013-09-09 12:05:00

+4

整個想法是不使用迭代器 – 2016-09-18 16:45:07

101

從,如果你想顯示所有的結果,你可以做db.collection.find().toArray()讓所有的結果,而它的外殼。

+0

這幫了我:) – GeekedOut 2012-06-04 15:15:00

+0

這。如果你只是想把它們全都放在一個外殼中,這樣就可以剪切和粘貼,這就足夠了。 – superluminary 2016-08-04 10:43:02

+0

這一個更有用 – anwerj 2017-02-21 11:33:38

32

總是可以做:

db.foo.find().forEach(function(f){print(tojson(f, '', true));}); 

要獲得緊湊視圖。

而且,我發現它非常有用,以限制被找到那麼返回的字段:

db.foo.find({},{name:1}).forEach(function(f){print(tojson(f, '', true));}); 

這會從富只返回_id和名稱字段。

+1

我喜歡這種方式,因爲它可以運行在shell腳本中(mongo客戶端使用'--eval') – 2013-09-26 03:21:08

+1

@鄭凱如果您使用腳本而不是shell,那麼shellBatchSize不相關,因爲您的結果不會由shell重複了你,你必須自己動手。 – 2013-11-06 04:36:26

+0

tojson()正是我期待從DBQuery轉換它,謝謝你! – 2015-10-26 17:10:47

相關問題