sqliteデータベーステーブルに日付を文字列として保存しました。何が必要なのですか私は過去7日間に保存された値を取得する必要があります。私は次のように使ってみましたが、値は表示されません。アンドロイドの日付を使用してデータベース(Sqlite)から値を取得する方法は?
私のデータベース機能
public Cursor paymentWeek(Activity activity)
{
String[] from = { _PAYMENTID, NAME, REQUESTEDDATE, FROMAD, TOADD, EMAILBODYPAYMENT, AMOUNT};
SQLiteDatabase db = getReadableDatabase();
String orderby = REQUESTEDDATE+" DESC";
Cursor cursor = db.rawQuery("select * from " + PAYMENTTABLE + " where " + REQUESTEDDATE + " BETWEEN "
+ "date('now')" + " AND " + "date('now','-7 days')", null);
activity.startManagingCursor(cursor);
return cursor;
}
Calling function
Cursor week = db.paymentWeek(this);
String[] weekly = new String[] { PaymentAppDataBase.REQUESTEDDATE,PaymentAppDataBase.PAYMENTNAME,PaymentAppDataBase.AMOUNT };
int[] sevendays = new int[] { R.id.Date,R.id.Name,R.id.Amount };
SimpleCursorAdapter weekcursor =
new SimpleCursorAdapter(this, R.layout.listview, week, weekly, sevendays);
setListAdapter(weekcursor);
db.close();
あなたたちはこの問題を整理場合は参考になります。私はここで立ち往生する。先週のレコード(7日)を取得するためのクエリ後
:yourDateFormatは次のようになります
。データベースの設計を変更することは可能ですか?ミリ秒(文字列ではない)としてデータベースに日付を格納すると、あなたの人生が楽になります。 – Roger
あなたは日数の配列を作成し、例えばforのように使用できます。 select * from table( '4/8/2012'、 '4/9/2012'、...);は効率的ではありませんが、文字列で動作します。 –
あなたのコメントありがとう...ああ、私はミリ秒として私のデータベースを変更することができます..あなたがアンドロイドプログラミングに新しいので、あなたがそれを行う方法をいくつかのヒントを与えるなら、それは素晴らしいだろう...ありがとう – GoCrazy