sqlite添加x天到期(x存储在表中)

时间:2015-06-12 12:48:58

标签: c# sqlite date add days

我需要在sqlite(c#app)中执行类似的操作:

select DATE(XDATE,'+XDAYS day') from TABLE

XDATE和XDAYS字段是字符串类型,存储在“TABLE”表中。

有人理解我,可以帮助我吗?谢谢。

1 个答案:

答案 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