我可能会在我的数据库上选择多个过滤器,因此我想查询数据库以获取光标,然后在该光标上进行查询以返回另一个光标。
您不能在游标上执行查询。游标是查询的结果,而不是查询的来源。您需要为原始游标获取的相同位置进行新的查询,使用指定新数据集的新参数。
您需要使用内部循环来过滤记录,这是其中之一的选项。
为此,您需要首先在cursor1中获取记录,并在内部循环中使用第一个Cursor的值并再次查询cursor2。
编辑
1)如果您只想要特定列,则可以在db.query()方法中进行过滤。 例如
Cursor curTaskList = db.query("tablename", new String[]{"col1", "col2"}, null, null, null, null, null);
2) 如果您想要特定的行,则可以在db.query()方法中进行过滤 例如:
Cursor curTaskList = db.query("timebasedlist", null, "col1 = ? AND col2 = ?", new String[]{"val1", "val2"}, null, null, null);
所以不需要在游标上进行查询
您可以在单个查询中进行筛选
如果您的游标有多行,您可以使用循环逐行获取
你可以将查询存储为文本,并使用它们创建新的游标吗?