我有一个mySQL数据库表t1,其中包含一个名为filter的bigint字段,我需要'和'给定的查询参数以过滤掉条目。
表t1:
filter bigint unsigned
info varchar(200)
作为纯mySQL语句,我的查询是:
SELECT info FROM t1 WHERE (filter & 34603933) = filter;
当然,数字34603933
是一个参数,并且从查询更改为查询。
问题是,如果loopbackjs在where条件中支持这样的微积分。有人可以指明我的方式,或者是否有可能建议解决方法?
在文档http://docs.strongloop.com/display/public/LB/Where+filter中我没有看到这样做的可能性,但不知何故我真的不相信它,因为在比较的右侧使用对列值的引用并不罕见, ?
答案 0 :(得分:1)
我不相信loopback有内置和按位支持,操作并不普遍(根据我的经验)。您可以尝试原始SQL接口:
var mysqlDS = app.dataSources.mysqlDS;
var bitWiseAndValue = 34603933;
mysqlDS.connector.query('SELECT info FROM t1 WHERE (filter & '+bitWiseAndValue+') = filter', function(err) {
if (err) {return console.log(err);}
// success actions
});