简单问题:如何根据集合成员资格过滤行?例如,我想知道r.row(' color')是否在集合中[' red',' green',' blue&# 39;]
我可以把它写成一组"或"表达式,但这似乎效率低下,特别是如果集合很大。
答案 0 :(得分:0)
这是你可以做到的一种方式。 (注意:这是你在javascript中构建查询的方式。根据你的编程语言,它可能略有不同)。
r.db('YOUR_DB').table('YOUR_TABLE').filter(
function(doc) {
return r.expr(['red', 'green', 'blue']).contains(doc('color'))
}
)
这是一个方便的指南,向您展示如何在ReQL中构建常见的SQL查询:
https://rethinkdb.com/docs/sql-to-reql/javascript/
在这种情况下,我们在讨论SQL中的IN
子句。