我正在使用sqlite数据库通过查询从数据库中添加时间。但是选择查询中的sum函数在模拟器上工作正常而不在device.it上会在设备上给我null值
public class MonthlyStatistics extends Fragment {
private SQLiteDatabase database;
private DbHelper dbHelper;
private ListView list;
private ArrayList<String> date,time,distance;
public MonthlyStatistics(){
}
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
dbHelper = new DbHelper(getActivity());
database = dbHelper.getWritableDatabase();
}
@Override
public View onCreateView(LayoutInflater inflater,
@Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.monthly_statistics, container, false);
list = (ListView) view.findViewById(R.id.monthlystatistics);
date = new ArrayList<String>();
time = new ArrayList<String>();
distance = new ArrayList<String>();
String year = getDate();
for (int i = 1; i < 13; i++) {
Cursor c = null;
String SqlQuery = "SELECT time(sum(strftime('%s',time)),'unixepoch') AS time_total,sum(distance) AS total_km,date AS month FROM walkingdetail where date like '"+year+"-0"+i+"-%%'";
if (i < 10) {
c = database.rawQuery(query, null);
if (c.moveToFirst()) {
if (c.getString(c.getColumnIndex("time_total")) != null
&& c.getString(c.getColumnIndex("total_km")) != null) {
date.add(c.getString(c.getColumnIndex("month")));
time.add(c.getString(c.getColumnIndex("time_total")));
distance.add(c.getString(c.getColumnIndex("total_km")));
}
}
c.close();
} else {
c = database
.rawQuery(query, null);
if (c.moveToFirst()) {
if (c.getString(c.getColumnIndex("time_total")) != null
&& c.getString(c.getColumnIndex("total_km")) != null) {
date.add(c.getString(c.getColumnIndex("month")));
time.add(c.getString(c.getColumnIndex("time_total")));
distance.add(c.getString(c.getColumnIndex("total_km")));
}
}
c.close();
}
}
return view;
}
}