Android 使用游标从数据库检索单个值的语法
我需要得到一列durms(整数)的ave,它以毫秒为单位存储秒数。 我试图通过将值直接赋给一个长变量来实现这一点。 这是正确的吗? 我检查了log.d(dur,cursor.getLong(0)) 它总是给出一个0。 我签入了DB,列durms中有值 请帮我:)代码如下Android 使用游标从数据库检索单个值的语法,android,sqlite,android-sqlite,android-cursor,Android,Sqlite,Android Sqlite,Android Cursor,我需要得到一列durms(整数)的ave,它以毫秒为单位存储秒数。 我试图通过将值直接赋给一个长变量来实现这一点。 这是正确的吗? 我检查了log.d(dur,cursor.getLong(0)) 它总是给出一个0。 我签入了DB,列durms中有值 请帮我:)代码如下 public String getAve(String s) { SQLiteDatabase db = getWritableDatabase(); String query = "select avg(dur
public String getAve(String s) {
SQLiteDatabase db = getWritableDatabase();
String query = "select avg(durms) from logs where type ='" +s+ "'";
Cursor cursor = db.rawQuery(query, null);
String dur = null;
if(cursor.moveToFirst()){
Log.d(dur, String.valueOf(cursor.getLong(0)));
long ss = cursor.getLong(0) / 1000 % 60;
long mm = cursor.getLong(0) / (1000 * 60) % 60;
long hh = cursor.getLong(0) / (1000 * 60 * 60) % 60;
if (hh > 0)
dur = hh + "h " + mm + "m " + ss + "s ";
else if (mm > 0)
dur = mm + "m " + ss + "s ";
else
dur = ss + "s ";
}
return dur;
}
另外,请告诉从数据库中检索值以进行操作的最短方法
谢谢,
Karthick。很可能
中的与任何内容都不匹配,0值的平均值为null,在解释为long时转换为0。很好,先生:)我发现类型值卡在数据流步骤中:)