2

わかりました、これがこれを行うのに長い道のりになることを本当に知っています...しかし、私が望むのは、人が考える比較的単純なことです。タイムスタンプ列を持つデータベースがあります。SQLite3 で iPhone SDK を使用しています。SQLite3 に今日のすべてのレコードを取得させたい (タイムスタンプ >= 今朝の真夜中) ..

私が思いついた(うまくいく)のは次のとおりです。しかし、もっと良い方法が必要です。これは、最善の方法であるにはあまりにも多くのステップを必要とします。(SQLite3 にタイムスタンプ自体を計算してもらいたいので、NSCalendar などで NSDate を使用するように言わないでください。)

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 に答える