SQLite查询日期

时间:2013-10-25 03:46:34

标签: python sqlite

我有一个SQLite数据库,我正在为一组特定的日期提取数据(比如说01-01-2011到01-01-2011)。将此查询实现到SQL的最佳方法是什么?理想情况下,我希望运行以下行:

SELECT * FROM数据库,其中start_date< date_stamp和end_date> date_stamp

当我将日期存储为字符串时,这显然不起作用。

我的解决方案(我认为它很混乱,我希望另一个解决方案)是将日期转换为以下格式的整数: YYYYMMDD 这使得上述生产线能够运行(理论上)。有更好的方法吗?

使用python sqlite3

如果我使用SQL而不是SQLite

,答案是否会有所不同

2 个答案:

答案 0 :(得分:0)

对于SQLite,这是最好的方法,因为与int相比,比字符串或任何Date And Time操作快得多

答案 1 :(得分:0)

您应该将日期存储在其中一个supported date/time datatypes中,然后比较无需转换即可使用,您可以在其上使用built-in date/time functions。 (无论使用字符串还是数字都与速度无关;数据库性能主要取决于所需的I / O量。)

在具有内置日期数据类型的其他SQL数据库中,您可以使用它。 (但是,这通常不便携。)