【发布时间】:2017-10-22 18:00:17
【问题描述】:
我需要从GivingDate 中提取月份和年份作为整数。 GivingDate 是一个 C++ TDateTime 在 SQLite 数据库中存储为 double 用于正确排序。但是,strftime 需要将日期作为 string 参数。
这是 SQL 语句(不起作用):
SELECT
GivingDate,
Amount,
strftime('%y', datetime(GivingDate, 'unixepoch')) as GivingYear,
strftime('%m', datetime(GivingDate, 'unixepoch')) as GivingMonth
FROM
FSBC_GivingInfo;
如何修改 SQL 语句以从 SQLite 数据库中的 GivingDate 提取月份和年份为 GivingMonth 和 GivingYear?
【问题讨论】:
-
什么是
TDateTime?真的是自 1970 年以来的秒数吗? -
TDateTime 是 Windows 系统时间。时间“0”是 1899 年 12 月 30 日上午 12:00。整数部分表示自 1899 年 12 月 30 日凌晨 12:00 以来的日期,小数部分表示 24 小时一天中的分数。