抓取 ID 不在单独 table 中的所有文档

Grab all documents whose IDs are not present in a separate table

我有一个 users table 和一个 tasks table。在 tasks 中,每个文档都包含一个 user_id 字段(这是 users table 中的一个 ID)和一些其他不相关的字段。

我想根据某些条件 (.filter({'field': 'value'})) 过滤用户,然后仅获取 NOT tasks [=30] 中的那些用户=](即 user_id 字段)。

我开始查询:r.table('users').filter({'field': 'value'}) 但我不太清楚如何写 "user shouldn't be found in tasks table"。

您可以嵌套 ReQL 表达式(包括在方法中查询另一个 table(如 filter)。 您想在这里使用一些索引来加快速度。

r.table('tasks').createIndex('user_id').run()
r.table('users').filter(...).filter(function(user) {
    return r.table('users').getAll(user('id'), {index: 'user_id'}).isEmpty()
})