SQLiteDatabase下的query方法的作用和基本格式
SQLiteDatabase
类下的query
方法用于执行一个SQL查询,并返回一个包含查询结果的Cursor
对象。
基本格式如下:
Cursor query(String table, String[] columns, String selection, String[] selectionArgs, String groupBy, String having, String orderBy);
参数说明:
table
:要查询的数据库表名。columns
:需要返回的列名数组。selection
:查询条件字符串,可以包含占位符(?)。selectionArgs
:占位符占位的值数组。groupBy
:分组的列名。having
:分组条件。orderBy
:排序的列名。
使用示例:
SQLiteDatabase db = ...; // 获取SQLiteDatabase实例
String table = "my_table";
String[] columns = {"column1", "column2"};
String selection = "column1 = ? AND column2 > ?";
String[] selectionArgs = {"value1", "10"};
String groupBy = "column1";
String having = "count(column1) > 2";
String orderBy = "column1 DESC";
Cursor cursor = db.query(table, columns, selection, selectionArgs, groupBy, having, orderBy);
// 从Cursor中获取数据
if (cursor.moveToFirst()) {
do {
String column1 = cursor.getString(cursor.getColumnIndex("column1"));
int column2 = cursor.getInt(cursor.getColumnIndex("column2"));
// 处理数据
} while (cursor.moveToNext());
}
// 关闭Cursor
cursor.close();
请注意,在实际开发中,还可以使用更便捷的SQLiteDatabase
查询构建器(SQLiteQueryBuilder
)来构建查询,以及使用ContentResolver进行跨进程查询。
评论已关闭