Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sqlite/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
我需要一个sqlite,相当于正在进行的msaccess查询_Sqlite_Dateadd - Fatal编程技术网

我需要一个sqlite,相当于正在进行的msaccess查询

我需要一个sqlite,相当于正在进行的msaccess查询,sqlite,dateadd,Sqlite,Dateadd,选择不同的格式(DateAdd(“s”和columnname&“,”1980年1月1日12:00:00 AM“),“dd MMM yyyy”)作为我假设要添加的秒数和原始日期是下面的硬编码值,同时等待注释中要求的澄清 要向日期添加秒数,您可以使用: select datetime('1980-01-01 00:00:00', "345000 seconds"); 这给出了结果:1980-01-0423:50:00 上面的示例不到4天(以秒计),如果您希望将结果截断为问题中查询所暗示的日期,则可

选择不同的格式(DateAdd(“s”和columnname&“,”1980年1月1日12:00:00 AM“),“dd MMM yyyy”)作为

我假设要添加的秒数和原始日期是下面的硬编码值,同时等待注释中要求的澄清

要向日期添加秒数,您可以使用:

select datetime('1980-01-01 00:00:00', "345000 seconds");
这给出了结果:
1980-01-0423:50:00

上面的示例不到4天(以秒计),如果您希望将结果截断为问题中查询所暗示的日期,则可以将其封装在日期函数中。但是,这将以“YYYY-MM-DD”格式给出结果,而不是像access查询那样以“DD-MMM-YYYY”格式给出结果

不幸的是,我找不到任何本机SQLite函数来将数字月份值转换为mmm格式。您可以使用replace手动执行此操作(类似于的答案),但这有点混乱

如果您乐于接受数字月份,那么您只需使用:

select strftime('%d-%m-%Y', '1980-01-01 00:00:00', "345000 seconds");
这给出了结果:
04-01-1980


可以找到有关SQLite日期/时间函数的更多信息。

因此,为了确认需求,您希望能够在固定的日期和时间上添加秒数。上述查询的“columnname”中包含秒数?这是表中的一个参数还是一列,名称建议使用后者,但您不是从表中选择。此外,从格式上看,您似乎希望以秒为单位添加一个量,但结果仅截断为日期。这是正确的吗?谢谢您的回复。列名是从包含日期的表中获取的。选择不同的格式(DateAdd(“s”,EXPIRY_date,“1/1/1980 12:00:00 AM”),“dd-MMM-yyyy”)作为a。这就像是从unixdate获取秒数,而不是unix日期。我必须使用1/1/1980 12:00:00 AMI有点困惑,请你在问题中提供一个完整的例子,说明有效期的数值和查询结果。