2011-11-07 31 views
0

我已存储的MongoDB文档中此文件:如何获取Mongodb文档中的字符串值?

{ 
    "_id":ObjectId("4eb7642ba899edcc31000001") 
    "hash":"abcd123" 
    "value":"some_text_here" 
} 

我使用的NodeJS访问数据库:

collection.findOne({'hash' : req.param('query') }, 
    function(err, result){ 
    console.log(res); 
}); 

此查询的结果是整个文档,但是我需要得到只“value”文本:“some_text_here”

这怎么办?

回答

0

您可以指定你感兴趣的领域(_id总是会回来,虽然):

collection.findOne({'hash': req.param('query') }, 
        {fields: ['value'] }, 
        callbackFunction); 
+0

我试着用Mongodb shell来检查它,但是我只是得到一个带有“_id”字段的json对象。 – xybrek

+1

该示例适用于node.js驱动程序。 MongoDB shell的语法不同:'findOne({hash:'x'},{value:1})'http://www.mongodb.org/display/DOCS/Querying#Querying-FieldSelection – Thilo

0

你能做到这样的方式:

collection.findOne({'hash' : req.param('query') }, 
    function(err, result){ 
     console.log(result.value); 
}); 
+0

此查询结果整个JSON文件,我需要的东西只会输出我需要的字段值。那可能吗? – xybrek

+0

不,你不能。您将始终使用至少_id属性接收对象。 http://www.mongodb.org/display/DOCS/Querying#Querying-FieldSelection –

+0

但是,除了_id和您需要的一个字段之外,您可以筛选出其他所有内容。 – Thilo

相关问题