根据文档,似乎为了过滤 30 岁或 40 岁的所有用户,我可以这样做(使用 python):
r.table("users").filter((r.row["age"].eq(30)) | (r.row["age"].eq(40))).run(conn)
假设我有一个基于输入/请求的列表:[12, 14, 18, 88, 33 ...],如何过滤处于上面列表中元素之一年龄的所有用户通过迭代它(而不是硬编码)?
最佳答案
这是一种方法
valid_ages = [12, 14, 18, 88, 33]
r.table("users").filter(lambda user:
r.expr(valid_ages).contains(user["age"])
).run(connection)
如果您使用索引和get_all
,您可以这样做
r.table("users").get_all(*valid_ages, index="age").run(connection)
(您需要在此之前创建索引年龄)
关于python - RethinkDB:多重比较过滤,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23900791/