2

好吧,我真的知道这有很长的路要走……但是,我想要的是相对简单的人会想。我有一个带有时间戳列的数据库。我正在使用带有 SQLite3 的 iPhone SDK。我想让 SQLite3 获取今天的所有记录(其中时间戳 >= 今天早上的午夜)..

我想出的(有效的)如下。但是必须有更好的方法。这需要太多的步骤才能成为最好的方法。(我希望 SQLite3 自己计算时间戳......所以请不要告诉我将 NSDate 与 NSCalendar 一起使用等)

select * from table where timestamp >= strftime('%s','now') - (strftime('%S',datetime('now','localtime')) + (strftime('%M',datetime('now','localtime')) * 60) + (strftime('%H',datetime('now','localtime')) * 3600));

必须有一种更简单的方法(最好是一种方法,我不会每次调用 datetime 和 strftime 4 次或更多次)

4

1 回答 1

5

您只想要今天的记录,还是今天之后的每一天的记录?

今天,只需执行以下操作:

select * from table where strftime('%Y-%m-%d', timestamp) = strftime('%Y-%m-%d', 'now')

于 2010-09-27T21:09:32.050 回答