>我以字符串格式将我的数据存储在字段"date"上,我想查询表格以显示具有包含指定年份的某个年份的结果。
我的问题是如何从字符串中获取年份,我目前拥有:
public Cursor getExpensesByYear () {
String sql = "SELECT * FROM " + TABLE_EXPENSE + " WHERE strftime('%Y', date) = '2015'";
Cursor cursor = getReadableDatabase().rawQuery(sql, null);
// String inputString = cursor.getString(5);
// DateFormat dateFormat = new SimpleDateFormat("dd-MM-yyyy");
// try {
// Date inputDate = dateFormat.parse(inputString);
// } catch (ParseException e) {
// e.printStackTrace();
// }
if (cursor != null) {
cursor.moveToFirst();
}
return cursor;
}
它根本不返回任何数据。
我遵循您的问题,但建议您,如果您需要将数据作为核心功能的一部分进行过滤,请在记录寄存器时添加一个带有年份的字段。完成后,检索将更快,更直接。希望对您有所帮助。