[英]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.