繁体   English   中英

将输入传递给sqlite IN运算符(Javascript,Cordova)

[英]Pass input to sqlite IN operator (Javascript, Cordova)

我在用于iPad的cordova环境中使用sqlite。 在使用单个输入查询select语句时,我会这样做

tx.executeSql("select * from activityData_table where id=? ;", [outage.outageId], function(tx, res)

但是,如果我想选择使用下面给出的IN运算符,该怎么办呢?

select * from activityData_table where id in (val1,val2,val2)

我将如何形成查询并将输入传递给它。 一组值是否足够或我们是否需要手动执行任何concat操作?

我找不到任何与JS一起使用sqlite的文档。 如果任何人可以建议文档或教程网站供参考将是非常有帮助的。

您可以获取值的计数,然后生成这样的语句(伪代码):

var values = [1,2,3,4];

var count = values.length;

var sql = 'select * from activityData_table where id in (';

for (var i = 0; i < count; i++) {
    if(i != (count - 1)) {
        sql += '?,';
    }
    else {
        sql += '?)';
    }
}

tx.executeSql(sql,values);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM