我需要在sqlite(c#app)中执行类似的操作:
select DATE(XDATE,'+XDAYS day') from TABLE
XDATE和XDAYS字段是字符串类型,存储在“TABLE”表中。
有人理解我,可以帮助我吗?谢谢。答案 0 :(得分:3)
使用SqlLite DateTime修饰符(https://www.sqlite.org/lang_datefunc.html)
日期(时间字符串,修饰符,修饰符,...)
时间字符串后面可以跟零个或多个修改日期和/或时间的修饰符。每个修改器都是一个应用于其左侧时间值的转换。修改器从左到右应用;订单很重要。可用的修饰符如下。
NNN天 NNN小时
NNN分钟
NNN.NNNN秒
NNN个月 NNN年
从工作日N unixepoch开始的一年中开始的一年开始
localtime utc
例如: 选择日期('现在','月初',' +1个月',' -1天');
CREATE TABLE [theDates] (
[d] VARCHAR(100) NULL,
[diff] varchar(100) NULL
)
insert into [TheDates] VALUES ('now', '-10 day')
Select d, diff, date([d], [diff]) from [TheDates]
d diff date([d], [diff])
-------------------------------------------
now -10 day 2015-06-02
如果你有数字数据
insert into [TheDates] VALUES ('now', -10)
Select d, diff, date([d], ([diff] || ' day')) from [TheDates]
d diff date([d], ([diff] || ' day'))
-------------------------------------------------------
now -10 day 2015-06-02