Android rawQuery – 有没有办法使用参数化的“IN”来收集数据

Android rawQuery – 有没有办法使用参数化的“IN”来收集数据,第1张

概述我试图在WHERE中使用动态创建的列表,例如: select * from books where id in (123, 120, 125) and bookCover = 'Hardcover' 我想在rawQuery中使用它,我在“?”中准备了SQL形式,例如: select * from books here id in (?) and bookCover = ? 有什么办法,如何在选择的 我试图在WHERE中使用动态创建的列表,例如:

select * from books where ID in (123,120,125) and bookCover = 'Hardcover'

我想在rawquery中使用它,我在“?”中准备了sql形式,例如:

select * from books here ID in (?) and bookCover = ?

有什么办法,如何在选择的IN子句中放入“IDs”列表?或者我必须忘记准备好的陈述“?” ?

在此先感谢您的帮助.搜索

解决方法 不 – 我不知道任何数据库(如Oracle,sql Server,sqlite,Postgres等)提供您所要求的…

您可以获得的最近解决方案是将ID插入第二个表,然后在IN部分中使用子查询…

MyIDtable hat 2字段QNO(只是一个键)和ID(包含您在IN中想要的ID …您首先插入3行具有相同的QNO和相应的ID …

INSERT INTO MyIDtable (QNO,ID) VALUES (3,120);INSERT INTO MyIDtable (QNO,123);INSERT INTO MyIDtable (QNO,125);

然后你可以像这样做一个SELECT:

select * from books where ID in (SELECT T.ID FROM MyIDtable T WHERE T.QNO = 3) andbookCover = 'Hardcover'

这基本上允许这样:

select * from books where ID in (SELECT T.ID FROM MyIDtable T WHERE T.QNO = ?) andbookCover = ?

在完成查找特定ID集后,您可以通过DELETE FROM MyIDtable WHERE QNO = 3进行清理.

总结

以上是内存溢出为你收集整理的Android rawQuery – 有没有办法使用参数化的“IN”来收集数据全部内容,希望文章能够帮你解决Android rawQuery – 有没有办法使用参数化的“IN”来收集数据所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1127083.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-30
下一篇 2022-05-30

发表评论

登录后才能评论

评论列表(0条)

保存