python sql ORDER日期不起作用

时间:2017-12-27 03:44:14

标签: sql python-3.x sqlite sql-order-by

我遇到了另一个(可能是自己造成的)问题。 Python3.6和sqlite 我非常适合创建数据库并添加表和信息以及所有这些。我的问题是,我所提供的信息不是连续的。但我希望它能在数据库中进行排序,因此处理起来更容易。下面是我的代码,它应该通过名为" datum"的时间戳对我的表条目进行排序(ORDER)。如果我在ubuntu上的sqliteman中运行相同的查询,它可以正常工作并重新排序这些行。但是,如果我在python中尝试它,它不起作用吗?

dc

以下是该表中数据的条目。有数百个条目,但我只是在这里展示了一些。

server.keepAliveTimeout

知道我在这里失踪的是什么吗? 谢谢!

con = lite.connect(db_name)

with con:
    try:
        cur = con.cursor()

        strExec = "SELECT * FROM " + db_table_name + " ORDER BY datum ASC"
        cur.execute(strExec)
        con.commit()
    except Error as e:
        print(e)
cur.close()
con.close()

如下所述,数据驻留在db表中的顺序完全不相关。在处理数据时,需要对数据进行排序和放置所需的任何顺序。因此,下面的代码片段是将数据转换为所需顺序的一个示例。

2017-12-23T00:00:00
2017-12-25T00:00:00
2017-12-24T00:00:00
2017-12-21T00:00:00
2017-12-24T00:00:00
2017-12-26T00:00:00
2017-12-12T00:00:00

1 个答案:

答案 0 :(得分:1)

SQL表是无序的。

如果要按特定顺序从表中检索行,则必须为每个检索行的查询添加ORDER BY子句。