0

createdDATETIME 種類のフィールドを持つ sqlite データベースを用意します。

次のクエリを使用して、過去 60 日間に作成されたデータベースからすべてのアイテムを取得できます。

SELECT * FROM TABLE where created >= date('now' , '-60 day')

先週の日曜日から土曜日までのすべてのアイテムのみを取得するクエリが必要です。そのようなクエリをどのように構成しますか?

4

1 に答える 1

1

strftimeを使用すると、曜日を取得できます。したがって、現在の日付からその数を引くと、先週の日曜日 (日曜日の場合は今日) の日付が得られます。

select date('now' , (select '-' || strftime('%w', date('now')) || ' days'))

これをさらに遡るベースとして使用できます。たとえば、このクエリは、最新の日曜日の前の日曜日の日付を返します。

select date('now' ,
    (select
        '-'
        || (cast(strftime('%w', date('now')) as integer) + 7)
        || ' days'
    ))

したがって、いくつかの基本的な計算を使用して、必要な日付範囲を作成できます。

于 2013-08-09T08:28:30.333 に答える