0

小数を含むデータベースがあります。列は「..decimal(5,2)not null」として設定されています。私がやろうとしているのは、列の合計を見つけて、このコードを使用してテキストフィールドに表示することです。

public int getTotal() {

 Cursor cursor = sqliteDatabase2.rawQuery(
            "SELECT SUM(thedata) FROM thetable", null);
 if(cursor.moveToFirst()) {
     return cursor.getInt(0);
     }
 return cursor.getInt(0);

}

ただし、返される場合、値は整数です。20ではなく20.75のようになります。

私はSQLiteにあまり詳しくないので、助けてください。

4

2 に答える 2

2

SQLiteはデータ型を認識していないDECIMALため、デフォルトで認識しているデータ型に戻る可能性がありますINTEGER。SQLiteによって認識される別のデータ型を使用してみてください。SQLiteが知っているデータ型は次のページにあります: http ://www.sqlite.org/datatype3.html

于 2009-07-28T08:27:18.847 に答える
2

Xperimentalの答えに加えて、あなたはを呼び出しgetInt()ておりCursor、から戻ってintを返していますgetTotal()。ここでintは、整数の省略形であり、「整数」と呼ばれます。浮動小数点値が必要な場合は、またはを使用しgetFloat()て返します。floatFloat

于 2009-07-28T10:32:07.160 に答える