sql - SQLite解析TEXT列以及日期信息

标签 sql sqlite

我正在使用SQLite DB,并且具有“日期”列,即VARCHAR

我需要提取2个日期之间的数据...

这就是我尝试过的...

SELECT * FROM Table1 WHERE Date BETWEEN '14/03/2017 17:00:10' AND '16/03/2018 17:00:12'
SELECT * FROM Table1 WHERE strftime('%d/%m/%y %H:%M:%S', Date) BETWEEN  strftime('%d/%m/%y %H:%M:%S','15/07/2016 20:00:09') AND  strftime('%d/%m/%y %H:%M:%S','16/07/2017 21:00:09')
SELECT * FROM Table1 WHERE strftime('%d/%m/%y %H:%M:%S', Date) BETWEEN  '2017/07/15 20:00:09' AND  '2017/07/17 21:00:09'


知道我在做什么错吗?

最佳答案

如果您有日期/时间列,则只需执行以下操作:

SELECT t1.*
FROM Table1 t1
WHERE t1.Date >= '2017-03-14 17:00:10' AND
      t1.Date < '2018-03-16 17:00:12';


为常数使用ISO / ANSI标准日期格式!

我强烈不建议您将between与日期/时间值一起使用。 Here是关于该主题的博客文章,尽管对于SQL Server,该文章适用于所有数据库。

关于sql - SQLite解析TEXT列以及日期信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49362272/

相关文章:

Python Sqlite3 和 QSqlite 区别

c# - 在 Entity Framework Core 代码优先的 SQLite 中设置日志模式

mysql - 选择给定日期间隔内的日期

c# - dotConnect 或 "sqlite.phxsoftware.com"用于将 Entity Framework 与 SQLite 结合使用

django - django左联接查询

mysql - 如何忽略 "Cannot add or update a child row"错误

iphone - 核心数据存储损坏

SQL Server,连接到具有相同列的多个表

python - SQLAlchemy 连接来自同一个表的多个列

sql - T SQL 累积减法