我想使用如下指定的过滤器过滤我的数据:
var filter = { minAge: 2, maxAge: 11, country:'uk', city':'london'};
在这种情况下,过滤将是:
r.db(dbName).table(tableName)
.filter(r.row("minAge").ge(filter.minAge)
.and(r.row("maxAge").le(filter.maxAge))
.and(r.row('country').eq(filter.country))
.and(r.row('city').eq(filter.city))
);
但是,某些过滤谓词可能会丢失,例如,如果我只有最小年龄和城市,我只想过滤它们:
var filter2 = { minAge: 2, city':'london'};
上面的过滤器应该导致下面
r.db(dbName).table(tableName)
.filter(r.row("minAge").ge(filter.minAge)
.and(r.row('city').eq(filter.city))
);
如何根据我可以传递给过滤器函数的过滤器对象键构建 ReQL 查询。