我有一个应用程序可以按日期提取信息,但是当用户在显示过去六天的那天将其提取时,我希望得到它。到目前为止,我有。
public double fetchInformation(){
Date d = new Date();
SimpleDateFormat date= new SimpleDateFormat("yyyy-MM-dd");
String day = String.valueOf(date.format(d));
Cursor c = ourdb.rawQuery("SELECT*FROM " + WW_TABLE+" WHERE "+
KEY_DATE+" LIKE ?", new String[]{day});
if(c.moveToFirst()){
return c.getDouble(0);
}
return c.getDouble(0);
}
如何从当前日期开始的六天内给我这个?
答案 0 :(得分:1)
你可能需要这样做。
Date d = new Date();
Calendar last6Day= new GregorianCalendar() {{
add(Calendar.DAY_OF_YEAR, -6);
set(Calendar.HOUR_OF_DAY, 0);
set(Calendar.MINUTE, 0);
set(Calendar.SECOND, 0);
set(Calendar.MILLISECOND, 0);
}};
Date dt6 = last6Day.getTime();
ourdb.rawQuery("SELECT*FROM tableName where date between dt6 AND dt");
注意:可能存在语法错误。我没有在IDE中输入它。