2015-05-19 78 views
0

我试图在月内获取所有记录。SQLite Android - geting月

我的日期存储为文本(tryed日期),并在一个字符串的Android

我对获得当前日期方法:

private String getDateTime() { 
     SimpleDateFormat dateFormat = new SimpleDateFormat(
       "yyyy-MM-dd HH:mm:ss", Locale.getDefault()); 
     Date date = new Date(); 
     return dateFormat.format(date); 
    } 

和我的光标:

public Cursor getCursor(){ 
     return db.rawQuery("Select strftime('%m', " + CN_DATE + ") as valMonth from " + TABLE_NAME + " where valMonth = '05' GROUP BY valMonth)" , null); 
    } 

错误:接近“)”:语法错误(代码1):,编译时:选择...

thx在您的帮助推进:)

(对不起,我的英语)

回答

0

您在您的查询字符串的结尾有一个额外的)。去掉它。

如果您想要获取给定月份的所有记录而不仅仅是一条聚合记录,还可以删除GROUP BY valMonth

如果您按月广泛查询,请考虑将月份值直接存储在列中,然后对其进行查询以获得更好的查询性能。

+0

thx for ur answer!但现在它说:列'_id'不存在 有一种方法可以将查询的结果存储在一个变量中?用于另一个查询? –

+0

抛出的异常究竟在哪里?你在使用'CursorAdapter'吗? – laalto

+0

是的,我使用CursorAdapter来填充自定义列表视图 –