当前位置: 首页 > 知识库问答 >
问题:

如何在android中运行SQLite数据库中的查询?

梁丘亦
2023-03-14

在我的SQLite数据库管理器中,我可以查询以下内容:

SELECT SUM(odometer) as odometer FROM tripmileagetable where date like '2012-07%';

此查询返回2012年7月名为“tripmileagetable”的表中里程表列的总和,但我想在android查询中编写此代码。

但是我不知道如何在database.query()方法中建立这个查询,有人能帮忙吗?

共有3个答案

桓信鸥
2023-03-14

您可以使用rawQuery方法:

Cursor c = database.rawQuery("SELECT SUM(odometer) as odometer FROM tripmileagetable where date like '2012-07%'", null);
闻人哲茂
2023-03-14

这取决于您计划如何在Android中访问数据库。您可以尝试以下操作:

SQLiteDatabase db = this.getWritableDatabase();
String selectQuery = "select sum(odometer) as odometer from tripmileagetable where date like '2012-07%'";
Cursor cursor = db.rawQuery(selectQuery, null);

如果您使用的是SQLiteOpenHelper类,则可以使用上述内容。

如果您自己创建了数据库文件,可以执行以下操作:

SQLiteDatabase db = SQLiteDatabase.openDatabase("/data/data/com.package.name/databases/dbname.db", null, SQLiteDatabase.OPEN_READWRITE);
String selectQuery = "select sum(odometer) as odometer from tripmileagetable where date like '2012-07%'";
Cursor cursor = db.rawQuery(selectQuery, null);

对SQLiteDatase、Cursor和SQLiteOpenHelper进行一些研究。

此示例可能会帮助您:

https://github.com/nraboy/Spyfi/blob/master/Android/src/com/nraboy/spyfi/DataSource.java

毋胜涝
2023-03-14
final Cursor cursor = db.rawQuery("SELECT SUM(odometer) as odometer FROM tripmileagetable where date like '2012-07%';", null);
int sum = 0;
if (cursor != null) {
    try {
        if (cursor.moveToFirst()) {
            sum = cursor.getInt(0);
        }
    } finally {
        cursor.close();
    }
}
 类似资料:
  • 问题内容: 在我的SQLite数据库管理器中,我可以查询以下内容: 这个查询从2012年7月的名为“ tripmileagetable”的表中返回了里程表总和,但是我想在android查询中编写此代码。 但是我不知道如何在database.query()方法中建立此查询,有什么可以帮助吗? 问题答案:

  • 我一直在尝试一个应用程序,其中我使用AsyncTask从sqlite表中检索数据。它有时工作起来没有那么多问题。但是当它失败时,Logcat看起来像这样 07-24 16:06:20.477: E/AndroidRuntime(950): 致命异常: 异步任务 #1 07-24 16:06:20.477: E/AndroidRuntime(950): java.lang.RuntimeExcept

  • 但在设备上运行我的应用程序时,此选项不可用。 我查过相关问题: null 而这些问题是2011年和2010年的。是否有任何插件我可以使用或其他外部工具?

  • 我试图做的是查询并在游标中返回vehicle\u implement表中的所有列及其左侧的所有表,通过图中所示的外键连接。在vehicle\u implement中有一些null implement\u id,我仍然需要这些行。没有,也不会有任何空的vehicle\u id。我认为,当implement\u id为null时,可能无法从implement表左侧的表中返回任何内容,这会阻止我获取所需

  • 本文向大家介绍Android中的SQLite数据库简介,包括了Android中的SQLite数据库简介的使用技巧和注意事项,需要的朋友参考一下 SQLite简介: SQLite是Android系统采用的一种开源的轻量级的关系型的数据库,Android中允许每个应用程序都拥有自己独立的数据库,每个应用程序的数据库的位置一般在/data/data/<package_name>/databases中。为