1

私のアプリケーションでは、データベースからデータを取得する必要があります。私の要件は、グループ列が世帯である合計列を合計する必要があるという条件を満たしてデータを取得する必要があることです。

私はこのクエリを書きました:

public String addhousehold()
{
    long sum = 0;

    Cursor cursor1 = db.rawQuery("SELECT SUM("+(KEY_TOTAL)+") FROM incomexpense WHERE groups=Income", null);

     if(cursor1.moveToFirst())
     {
         sum = cursor1.getLong(0);
     }

     cursor1.close();

     String housetotal=String.valueOf((long)sum);       
     System.out.println("house="+housetotal);

     return housetotal; 
}

しかし、私はエラーが発生します:

java.lang.RuntimeException: アクティビティ ComponentInfo{com.budget1/com.budget1.Report} を開始できません:
android.database.sqlite.SQLiteException: そのような列はありません: 収入: 、コンパイル中: SELECT SUM(total) FROM incomexpense WHERE groups =収入。
私はこれが初めてなので、助けてください。前もって感謝します

4

1 に答える 1

1

クエリは次のようになります。

Cursor cursor1 = db.rawQuery(
         "SELECT SUM("+(KEY_TOTAL)+") FROM incomexpense WHERE groups='Income'",null);

(収入) が文字列の場合..そうでない場合は、列が存在することを確認する必要があります..

于 2012-07-10T07:54:28.837 に答える