【问题标题】:Sort sqlite database by time on android在android上按时间排序sqlite数据库
【发布时间】:2012-01-14 03:40:07
【问题描述】:

我正在使用此代码-

myDB.rawQuery("SELECT * FROM " + TableName+ " ORDER BY "+ params[0], null);

按列对表格进行排序,效果很好,除了其中一列是时间(如在 iTunes 中),即 2:35 2 分 35 秒。这会导致它排序不正确。我怎样才能以正确的方式对其进行排序?我正在使用 android 的 sqlite。

【问题讨论】:

  • 你的表结构?样本数据?

标签: java android database sqlite sorting


【解决方案1】:

除了将日期存储为 2:35,您还可以让列存储秒数,因此为 155(2 分钟,35 秒 = 155 秒)。因此它会很好地排序。您可以在代码中将秒转换为分钟/秒。

或者,如果你愿意,你可以有两列,分和秒。

如果您正在处理数据,那么以 2:35 这样的格式存储时间是没有意义的。

【讨论】:

  • 啊,我怎么没想到呢?我会在几秒钟内保存它,非常感谢。
【解决方案2】:

最好的方法是将 Time since epoch 存储为自 01/01/1970 以来的毫秒数,然后您可以随意对其进行排序。像这样节省时间可以让您忘记许多需要努力的问题。

这里是example

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-11-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多