2013-07-24 81 views
1

From documentationfind()定義像波紋管:忽略所有字段(密鑰)轉換成蒙戈找到

db.collection.find(query, projection)

其中projection是一個對象,指定字段中使用的投影算子返回。

要返回匹配文檔中的所有字段,請使用省略此參數。

我的問題是,如果有任何的方式來忽略所有領域使用projection對象。

我想收到這樣的響應:

[{}, {}, {}, {}]

(一個空對象陣列)

要忽略我使用密鑰:{"key": 0}。 我已經試過{"$all": 0},似乎不起作用。

如何忽略所有字段?


我知道,我可以使用count()功能,但這並不能幫助我在這種情況下。

+0

你爲什麼要做這個? – Zirak

+0

@Zirak我想統計集合中有多少個文檔,但是使用'find()',我不想獲取文檔的內容,只是它們有多少。 –

+0

爲什麼不使用'count()'?我不確定它怎麼沒有幫助 – Sammaye

回答

1

要忽略所有的領域,出_id,你可以使用:

db.collection.find(查詢,{$所有:1})

,將返回:

{ 「_id」:的ObjectId( 「4d6bf563c2dbe2c5f220dc70」)}

{ 「_id」:的ObjectId(「4d6bf563c2dbe2c5f220d C71 「)}

{ 」_id「:的ObjectId(」 4d6bf563c2dbe2c5f220dc72" )}

併除去_id使用:

db.collection。發現(查詢,{$所有:1, '_id':0})

返回:

{} {} {}

+0

謝謝!這是正確的! +1 –