sql - 在SQLite日期算法中使用'现在'

标签 sql sqlite

我有一个带日期的sqlite表,其日期字段为YYYYMMDD格式(因此20131204 = 2013年12月4日),字段名称为cycleStarted。

我试图计算从dateStart到今天的天数(在这种情况下,其中cycleStared = 10)。

我有一个问题-这是我的sql-不用说-不起作用;

SELECT  julianday(substr('now', 1, 4) || '-' ||
substr('now', 5, 2) || '-' ||
substr('now', 7, 2)) -
julianday(substr(cyclestarted, 1, 4) || '-' ||
substr(cyclestarted, 5, 2) || '-' ||
substr(cyclestarted, 7, 2))
FROM cycles WHERE cycleid = 10


有人可以指出我正确的方向吗?

谢谢。

最佳答案

你可以试试这个

    SELECT CAST(JULIANDAY('NOW') - JULIANDAY(SUBSTR(cyclestarted, 1, 4) || '-' || SUBSTR(cyclestarted, 5, 2) || '-' || SUBSTR(cyclestarted, 7, 2)) AS INT)
      FROM cycles
      WHERE cycleid = 10

关于sql - 在SQLite日期算法中使用'现在',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20387319/

相关文章:

sqlite - 通过 Shiny 保存对sqlite db的更改

mysql - 有什么方法可以在同一个查询中获得第 95 个百分位数和总和?

sql - 索引字段上的多个过滤器

python - 从 Access 创建 sqlite 数据库

sql - 合并前一个记录之后的日期有零天或一天间隔的日期

ruby - - 续集/适配器/(续集::AdapterNotFound)

python - Django/SQLite 用户模型 UNIQUE 约束失败

mysql - 如何在 mysql 中选择 min 从 cast varchar 到 int

mysql - SQL Server 备份到 MySQL

java - 如何从 JTable 中的 JTextField 中检索值?