1

我有一系列 id

ids = [1, 2, 3, 4, ...] #1000 ids

我如何使用此功能:

r.table("users").get_all(1, 2, 3, 4, ..1000 ids.., index: "id")

我可以用

r.table("users").filter{ |doc| r.expr(ids).contains(doc["id"])}

但是在拥有 600 万个文档的数据库上速度太慢了

此处采用的方法SQL 到 ReQL 备忘单

4

1 回答 1

2

要将ids数组扩展为参数列表(该get_all方法所期望的),请使用 splat 运算符 ( *array),如下所示:

ids = [1, 2, 3, 4]
r.table('users').get_all(*ids, index: 'id') # note the `*`
于 2018-03-20T17:21:09.090 回答