Rah*_*hul 6 android android-contentprovider
可以getContentResolver().query()在我想要的时候使用sum(column)吗?
要么
我是否必须对db句柄进行原始查询?
提供列数组时ContentResolver.query,使用sum()函数包装列名
String[] columns = new String[] { "sum(" + columnName + ")" };
Cursor cursor = getContentResolver().query(
content_uri,
columns,
selection,
selectionArgs,
sort
);
cursor.moveToFirst();
int columnSum = cursor.getInt(0);
Run Code Online (Sandbox Code Playgroud)
好吧,看来使用它是不可能的getContentResolver().query()。我必须获得数据库连接并进行rawQuery.
ContentProviderClient client = getContentResolver().acquireContentProviderClient(AUTHORITY);
SQLiteDatabase dbHandle= ((MyContentProvider)client.getLocalContentProvider()).getDbHandle();
Cursor cursor = dbHandle.rawQuery("SELECT sum("+COLUM_NNAME+") FROM "+TABLE_NAME +" WHERE "+WHERE_CLAUSE , null);
cursor.moveToFirst();
int cnt = cursor.getInt(0);
cursor.close();
cursor.deactivate();
client.release();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4376 次 |
| 最近记录: |