0

BMI 列が 0 ではない、前の最新のレコードを見つける必要があります。たとえば、データが入力されているアプリ画面を開いています。しかし、BMI フィールドが 0 の場合、そのフィールドが 0 ではない直前の最新のレコードをデータベースから抽出する必要があります。

このクエリを試しましたが、現在の月でしか機能しません。翌月の日付文字列を指定すると、何も抽出されません。

"SELECT * FROM " + TABLE_DIARY + " WHERE strftime('%d.%m.%Y', `" + DATE_TIME + "`) < '"
            + date + "' AND " + BMI + " > 0";

ありがとう!

4

1 に答える 1

0

strftimeなしで比較して修正しました。このクエリ文字列を使用しました:

"SELECT * FROM " + TABLE_DIARY + " WHERE (" + DATE_TIME + " < '"
            + formatter.format(dateCal.getTime()) + "') AND (" + BMI + " > 0)";

そして、SimpleDateFormatter によってフォーマットされた日付。

于 2013-04-27T07:24:50.007 に答える