在 RethinkDB 中设置成员资格测试
Set membership test in RethinkDB
简单问题:如何根据集合成员过滤行?例如,我想知道 r.row('color') 是否在集合 ['red'、'green'、'blue'].
中
我可以将其写成一组 "or" 表达式,但这似乎效率低下,尤其是当集合很大时。
这是您可以做到的一种方法。 (注意:这就是您在 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
子句。
简单问题:如何根据集合成员过滤行?例如,我想知道 r.row('color') 是否在集合 ['red'、'green'、'blue'].
中我可以将其写成一组 "or" 表达式,但这似乎效率低下,尤其是当集合很大时。
这是您可以做到的一种方法。 (注意:这就是您在 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
子句。