从sqlite按日期升序对列表进行排序

Posted

技术标签:

【中文标题】从sqlite按日期升序对列表进行排序【英文标题】:Sort a list in ascending order by date from sqlite 【发布时间】:2011-12-24 12:09:48 【问题描述】:

我有一个用于检索这样的数据的代码。我想获取日期按升序排列的记录。我尝试使用 "KEY_DATE_TIME ASC" 。但它没有用。

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);

【问题讨论】:

key_date_time 列的数据类型是什么? 它是字符串。那么它可以像排序其他字符串一样排序 【参考方案1】:

假设 KEY_DATE_TIME 是一个保存 db 字段名称的字符串常量,以下应该可以工作:

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");

【讨论】:

@SBerg413 我正在尝试根据日期时间排序,但它不起作用,日期存储为:2015-09-18T14:15:20.047+05:00 ASC 在 SQL 中是默认的。见w3schools.com/sql/sql_orderby.asp。

以上是关于从sqlite按日期升序对列表进行排序的主要内容,如果未能解决你的问题,请参考以下文章

SQLite 按日期排序1530019888000

使用数据库中的时间作为字符串变量按升序对 ListView 上的数据进行排序?

Cordova Javascript SQLite 按日期时间排序

如何对回收站查看 SQLite 内容进行排序

使用android对sqlite中的字母数字值进行自然排序

如何按升序对这个浮点数值列表进行排序?