Rethinkdb按位比较

Rethink DB Bitwise comparison

我正在尝试根据字段中的某些位来过滤 rethinkdb 选择 我试过

r.db("db").table("table").filter(r.expr(r.row("flags") & 64).ne(0))
// and
r.db("db").table("table").filter(r.row("flags") & 64)

64 是要测试的,没有运气,什么都没有返回。我试过在不调用行的情况下进行测试,效果很好

r.db("db").table("table").filter(114 & 64)
// or
r.db("db").table("table").filter(r.expr(114 & 64).ne(0))

即 returns 所有条目,或 none。我只想获取位测试不等于 0

的条目

rethinkdb默认没有按位AND运算符,但是可以执行任意javascript作为过滤函数,如下:

r.db("db").table("table").filter(
   r.js('(function (row) { return (row.flags & 64) != 0; })')
)