在SQLite中使用日期

时间:2014-04-20 19:26:13

标签: sqlite

我在餐桌上有一个名为“time”的TEXT列,表格中的TEXT格式为YYYY-MM-DDTHH:MM。我正在尝试搜索在给定时间内12小时内的其他时间,虽然我无法弄清楚如何做到这一点。

我已经尝试过测试

WHERE pain.time < meal.time + "1:00" AND pain.time > meal.time

但这种方法改变了一年而不是一小时。我也尝试测试添加“0000-00-00T01:00”的相同查询,但它似乎没有做任何事情。 我不确定还有什么可以测试。

1 个答案:

答案 0 :(得分:0)

SQLite没有内置的日期/时间数据类型,因此您必须使用either numbers or strings并正确处理它们。

要进行计算,您必须直接对数值进行计算(可能需要转换为数字并返回),或使用built-in date/time functions的修饰符:

... WHERE meal.time BETWEEN datetime(pain.time, '-12 hours') AND pain.time