我想将所有文档放在一个表中,其id与给定列表中的id匹配.SQL中的东西看起来像:SELECT * FROM table WHERE id IN (1, 2, 3, 4).在RethinkDB中执行此操作的最简单,最有效的方法是什么?
neu*_*ino 10
如果要按主键过滤
arrayOfIds = [1,2,3,4]
r.table("tableName").getAll(r.args(arrayOfIds)).run(...)
Run Code Online (Sandbox Code Playgroud)
如果要过滤不是主键的字段"foo"
arrayOfIds = [1,2,3,4]
r.table('tableName").indexCreate('foo").run(...)
r.table("tableName").getAll(r.args(arrayOfIds), {index: "foo"}).run(...)
Run Code Online (Sandbox Code Playgroud)
没有索引:
arrayOfIds = [1,2,3,4]
r.table('tableName").filter(function(doc) {
return r.expr(arrayOfIds).contains(doc("foo"))
}).run(...)
Run Code Online (Sandbox Code Playgroud)
这些代码段是用JavaScript编写的.如果您使用的是Python/Ruby,请使用下划线而不是camelCase.
| 归档时间: |
|
| 查看次数: |
1370 次 |
| 最近记录: |