如果COL_4中存在多个相同值(dataClicked)的行,是否会返回多个ID? COL_1 = “ID”;
public int getDateId(String dateClicked) {
int dateID=0;
String last_query = "SELECT " + COL_1 + " FROM " + TABLE_NAME + " WHERE " + COL_4 + " = '" + dateClicked + "'";
Cursor c = database.rawQuery(last_query, null);
if (c != null && c.moveToFirst())
{
dateID = c.getInt(0);
}
c.close();
return dateID;
}
如果不是,我可以将值存储在数组中吗?我怎么能这样做
答案 0 :(得分:1)
如果您有多个COL_4
与dateClicked
具有相同的值,则会返回多个COL_1
。您可以将它们添加到列表中:
public List<Integer> getDateIds(String dateClicked) {
List<Integer> ids = new ArrayList<>();
String last_query = "SELECT " + COL_1 + " FROM " + TABLE_NAME + " WHERE " + COL_4 + " = '" + dateClicked + "'";
Cursor c = database.rawQuery(last_query, null);
c.moveToFirst();
while (!c.isAfterLast()) {
ids.add(c.getInt(0));
c.moveToNext();
}
c.close();
return ids;
}