0

我有一个推文数据库,其中实际的推文文本位于一个名为“文本”的字段中。

它看起来像这样:

 "_id" : ObjectId("519184ad34dfb73dcdfdda2f"),
    "created_at" : "Mon May 13 01:41:25 +0000 2013",
    "id" : NumberLong("333758850945667072"),
    "id_str" : "333758850945667072",
    "text" : "No quiero ir a la. Escuela",

我想知道如何查询和显示最长的推文?我一直在想可能是 .sort 或 .length 或类似的东西,但我环顾四周,到目前为止还没有发现任何有用的东西。

帮助!谢谢!

4

2 回答 2

2

如果您需要执行最长的推文提取,那么最好的方法是将推文的长度作为文档中的单独字段保留,并在其上设置索引。然后您可以使用 .sort(-1).limit(1) 进行快速查询。您可以编写自己的脚本将 JSON 数据导入 MongoDB ( http://docs.mongodb.org/ecosystem/drivers/ ) 并在导入时添加长度字段。

任何替代方法都意味着进行完整的集合扫描,以找到具有最大值“text.length”的文档。但这是一项非常耗费资源的操作,除非您不关心有效性,否则绝对应避免。

于 2013-05-14T04:56:21.730 回答
0

在保存文档的同时,也保存推文的长度。您可以选择为该字段编制索引,以便查询运行过快。

于 2013-05-14T02:38:57.573 回答