1

我正在尝试从 Python 查询 CouchDB 数据库,它可以工作......但不完全。

因此,我创建了一个分区数据库,其中包含电影、评级和标签的分区,每个分区 _id 都是“partitionName:id”。

现在我想将文档计入评级分区(我下载的 .csv 文件中的 100836)

连接后我这样做:

mango1 = {"selector" : { "_id" : {"$regex" : "^ratings :"}}}
i = 0
for row in db.find(mango1):
    i += 1
print ("Ratings are: ", i)

它总是打印 25 个,但从 GUI 我知道超过 25 个文档。我该如何解决这个问题?我读到 Mango 不能像 SQL 一样计数。

4

1 回答 1

1

您总是得到 25 个,因为默认的 CoucheDB 限制是 25 个文档。

你需要增加

  • 限制大小,以便一次性检索所有文档或
  • 进行某种分页,您可以使用起始偏移量检索 25 个文档

增加检索文档的限制

要获取例如 100 个文档,您可以尝试以下操作:

{"selector" : { "_id" : {"$regex" : "^ratings :"}}, "limit": 100}

分页 一种分页形式可能如下所示:

{"selector" : { "_id" : {"$regex" : "^ratings :"}}, "limit": 50, "skip": 100}

此查询将跳过前 100 个文档并为您提供以下 50 个。

于 2020-04-28T15:16:54.540 回答