如何在SQLITE Android中添加子查询和’IN’?

前端之家收集整理的这篇文章主要介绍了如何在SQLITE Android中添加子查询和’IN’?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我的问题是我要写这个

select * from contacts where id in (select cpk from mapping where gpk = 'MY-VARIABLE-HERE')

在Android中查询但在运行时失败.
当我使用静态变量运行它时,它可以工作并提供数据但是当我尝试使用选择args时它会失败.

到目前为止,我已经尝试过这些:

1)Cursor cursor = myDataBase.rawQuery(“select * from contacts where where in(select cpk from mapping where gpk =”“’”“?”“’”“)”,new String [] {grpName});

2)Cursor cursor = myDataBase.query(TABLE_CONTACTS,null,“id in”,new String [] {“(从映射中选择cpk,其中gpk =’”grpName“’)”},null);

3)Cursor cursor = myDataBase.rawQuery(“select * from contacts where where in(select cpk from mapping where gpk =?)”,new String [] {grpName});

请帮帮我…提前谢谢……

解决方法

解决了这个问题,我为变量传递了错误的值.

Cursor cursor = myDataBase.rawQuery("select * from contacts where id in (select cpk from mapping where gpk = ?)",new String[]{grpName});

工作正确.

谢谢大家帮忙..

猜你在找的Sqlite相关文章