2009-12-07 34 views

回答

2

我知道这个职位是有点过时,但我反正发布对于那些像我一样谁可能有类似的问题。我从一个打开的API获取日期为“2013-01-01T01:00:00 + 0000”,并将其作为字符串存储在sqlite中。当我需要根据日期范围查询记录时,出现问题。由于我无法使用STR_TO_DATE(),我发现我可以使用sqlite函数strftime()。下面是我使用的这个实例的工作查询的例子,希望这将能帮助别人了:

select strftime(date_created) as dateCreated from tblFeeds 
where strftime(date_created) between strftime('2013-01-01') and strftime('2013-01-08') 
order by dateCreated; 

这引起了我2013年1月1日和01之间创建的记录-08-2013(7日期范围)。

这里也有一些日期范围为:你的情况下,你不知道你要使用的日期:

(最近24小时):

select strftime(date_created) as dateCreated from tblFeeds 
where strftime(date_created) between strftime(date('now','-24hours')) and strftime(date('now')) 
order by dateCreated 

(上周):

select strftime(date_created) as dateCreated from tblFeeds 
where strftime(date_created) between strftime(date('now','-7days')) and strftime(date('now')) 
order by dateCreated 

(上个月):

select strftime(date_created) as dateCreated from tblFeeds 
where strftime(date_created) between strftime(date('now','-1months')) and strftime(date('now')) 
order by dateCreated