2011-11-08 47 views
12

我有一个代码来检索这样的数据。我想按升序获取日期记录。我尝试使用“KEY_DATE_TIME ASC”。但它没有工作。按照日期从sqlite升序排序列表

public Cursor fetchAllReminders() { 

return mDb.query(DATABASE_TABLE, new String[] {KEY_ROWID, KEY_TITLE, 
     KEY_BODY, KEY_PHONE,KEY_DATE_TIME}, null, null, null, null, null); 
} 
+0

什么key_date_time列的数据类型? – Chris

+0

它是字符串。所以它可以排序,就像排序其他字符串 – Matthew

回答

41

假设KEY_DATE_TIME是一个字符串常量保持数据库字段的名称,下面应该工作:

return mDb.query(DATABASE_TABLE, new String[] {KEY_ROWID, KEY_TITLE, 
     KEY_BODY, KEY_PHONE,KEY_DATE_TIME}, null, null, null, null, KEY_DATE_TIME + " ASC"); 
+0

是啊..那是一个字符串常量..它完全为我工作......谢谢 – Matthew

+0

不客气。很高兴有帮助。如果它对你有帮助,不要忘了标记我的答案是正确的。谢谢。 – SBerg413

+0

@ SBerg413我想根据日期时间进行排序,但它不工作,日期被存储为:'2015-09-18T14:15:20.047 + 05:00'。 –