MySQL按日期排序行

时间:2016-09-15 13:40:43

标签: mysql

我试图按每行的日期排序我的行。

一行有[String:Any]? ,一行有2016-09-15 15:36我如何订购它们以便最高的一个位于顶部?

他们的行被称为2016-08-15 13:12,我知道在正常查询中,你会做th_activity之类的事情,但我相信我知道这个问题。我使用varchar作为行的类型。如果这是我必须使用的,我不确定日期的长度/值应该是多少。

如果有人可以解释我如何正确地订购,我会很感激。

4 个答案:

答案 0 :(得分:4)

如果您的日期是年 - 月 - 日小时:分钟,您可以按字母顺序排序,没有任何问题,因此ORDER BY th_activity DESC应该可以正常工作。

答案 1 :(得分:0)

您可以将列的类型设置为timstamp而不是varchar,它不关心数据的长度(仅在插入数据时要注意格式)。

按时间戳检查此问题的顺序:

MYSQL - Order timestamp values ascending in order, from newest to oldest?

SELECT th_activity
FROM tableName
ORDER BY timestamp desc;

答案 2 :(得分:0)

可能需要str_to_date转换

beforeEach(function () {
    projectPage.refresh();
});

答案 3 :(得分:0)

我会使用数据类型

datetime

并使用你在问题中写的相同的选择:

order by th_activity DESC