我创建了一个包含一些值的表:
db.execSQL("create table table_test ("
+ "id integer primary key autoincrement,"
+ "money real not null" + ");");
ContentValues cv;
cv = new ContentValues();
cv.put("money", "137.38");
db.insert("table_test", null, cv);
cv = new ContentValues();
cv.put("money", "136975.00");
db.insert("table_test", null, cv);
然后我试图得到一笔钱:
cursor = db.query("table_test", new String[] { "total(money) as money" }, null, null, null, null, null);
if (cursor.moveToFirst()) {
do {
String money = cursor.getString(cursor.getColumnIndex("money"));
Log.d(tag, "money=" + money);
} while (cursor.moveToNext());
}
cursor.close();
答案应该是 137112.38,但它四舍五入到 137112 - 我不明白为什么。
如果我不输入大数字,它可以正常工作,但是对于大数字,我只能得到结果的整数部分。