【问题标题】:sorting data by date?按日期排序数据?
【发布时间】:2010-06-24 06:01:06
【问题描述】:

我正在根据日期对我的数据库进行排序。 SQLite 中的日期字段只不过是一个字符串,以 dd-mm-yyyy 的形式存储。 我如何进行排序。

我的想法是创建一个虚拟表。将日期转换为 yyyymmdd 格式。然后简单地使用按日期列排序对其进行排序。然后再次删除表。

有没有更有效或更好的方法?

【问题讨论】:

    标签: sql android sqlite


    【解决方案1】:

    您应该重新创建数据库以将数据存储为 ISO 日期 yyyy-mm-dd(按照建议),然后在 SQLite 中排序就可以了。

    除此之外,您始终可以从该字段中子串字段,并通过它们进行排序,但那太老套了。在 Android 上太糟糕了,您不能拥有用户定义的函数。

    【讨论】:

      【解决方案2】:

      更好的方法是在数据库中使用 Date 数据类型。这样你就可以轻松:

      SELECT * FROM table ORDER BY dateColumn;
      

      SELECT * FROM table ORDER BY dateColumn DESC;
      

      如果你想按其他顺序。

      如果您将其设为日期数据类型,对您来说会更容易。

      编辑
      错误的链接。感谢您的评论,这是数据类型的正确链接:http://www.sqlite.org/datatype3.html
      edit

      【讨论】:

      • SQLite 是无类型的,这里是指向数据类型的正确链接:sqlite.org/datatypes.html
      • 哦,操作,在那里快速搜索。对不起。编辑它。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-01-12
      • 2021-09-10
      • 1970-01-01
      • 1970-01-01
      • 2018-01-29
      • 2017-05-16
      • 2018-05-16
      相关资源
      最近更新 更多