Android の mediastore データベースには images という名前のテーブルがあり、images テーブルには timetaken という名前の列があり、これはイメージの作成時刻を表し、ミリ秒単位です。
今、私は作成された日(時間ではなく)で画像をグループ化し、毎日の画像を数えたいという要求があるので、次のクエリを試しました:
SELECT datetaken/86400000*86400000 as dateT, count(dateT) as imageSumInDate FROM images WHERE (1 = 1 ) group by (dateT) ORDER BY dateT DESC
残念ながら、エラーが発生します:
android.database.sqlite.SQLiteException: そのような列はありません: dateT (コード 1)
次に、他の人に問題を尋ねると、彼は次のようなサブクエリ スタイルを提供します。
select dateT,COUNT(dateT) as imageSumInDate from (SELECT datetaken/86400000*86400000 as dateT FROM images)t WHERE (1 = 1 ) group by (dateT) ORDER BY dateT DESC
これは正しいかもしれませんが、ContentResolver のクエリ メソッドでこのサブクエリを使用することはできません。ContentResolver は、次のスタイルのクエリのみをサポートする場合があります。
______ が ____ で注文されるテーブルから ____ を選択する
ContentResolver のクエリ スタイルに合わせるのに役立つトリックはありますか?
どんな助けでも本当に感謝します!