Android获取数据库列的总和

 栾永亮19820321 发布于 2023-02-10 14:32

我需要帮助总结我的数据库中的一列(金额)中的所有值.我可以得到一个特定的价值.但是我需要一个特定列的总和,有人告诉我我做错了什么

这是我的代码

    Button button3 = (Button) findViewById(R.id.button3);
    button3.setOnClickListener(new OnClickListener() {          
       public void onClick(View v) {                
          DatabaseAdapter databaseAdapter = new DatabaseAdapter(getApplicationContext());
          databaseAdapter.open();
          ArrayList records = databaseAdapter.fetchAllRecords();
          if (records.size() > 0) {
              et.setText(records.get(0));
          }
          databaseAdapter.close();
      }
   });

    //Create our database by opening it and closing it
    DatabaseAdapter databaseAdapter = new DatabaseAdapter(getApplicationContext());
    databaseAdapter.open();
    databaseAdapter.close();
} 

private Object append(CharSequence text) {
    // TODO Auto-generated method stub
    return null;
}

/** Create a new dialog for date picker */
@Override
protected Dialog onCreateDialog(int id) {
    switch (id) {
       case DATE_DIALOG_ID:
         return new DatePickerDialog(this, pDateSetListener, pYear, pMonth, pDay);
    }
    return null;
}
}

这是数据库的一部分 DatabaseAdapter.java

package com.example.androidtablayout;

import java.util.ArrayList;
import android.content.ContentValues;
import android.content.Context;
import android.database.Cursor;
import android.database.SQLException;
import android.database.sqlite.SQLiteDatabase;
import android.text.Editable;

public class DatabaseAdapter {

    private Context context;
    private SQLiteDatabase database;
    private DatabaseOpenHelper dbHelper;

    public DatabaseAdapter(Context context) {
       this.context = context;
    }

    public DatabaseAdapter open() throws SQLException {
       dbHelper = new DatabaseOpenHelper(context);
       database = dbHelper.getWritableDatabase();
       return this;
    }

    public void close() {
       dbHelper.close();
    }


    public long createRecord(String text,int j,String text1,String text2) {
        ContentValues contentValue = new ContentValues();       
        contentValue.put("date", text);     
        contentValue.put("amount", j);  
        contentValue.put("des", text1);
        contentValue.put("category", text2);
        return database.insert("Extable", null, contentValue);
    }

    public boolean updateRecord(long rowId,String text,int j,String text1,String text2) {
        ContentValues contentValue = new ContentValues();
        contentValue.put("date", text);     
        contentValue.put("amount", j);  
        contentValue.put("des", text1);
        contentValue.put("category", text2);
        return database.update("Extable", contentValue, "_id =" + rowId, null) > 0;
    }

    public boolean deleteRecord(long rowId) {
        return database.delete("Extable", "_id =" + rowId, null) > 0;
    }

    public ArrayList fetchAllRecords() {
        Cursor cursor = database.query("Extable", new String[] { "_id", "date", "amount", "des", "category"},
                null, null, null, null, null);      
        ArrayList records = new ArrayList();        
        cursor.moveToFirst();
        for (int i = 0; i < cursor.getCount(); i++) {           
            records.add(cursor.getString(1));       
            cursor.moveToNext();
        }
        cursor.close();
        return records;
    }

    public String fetchRecord(long rowId) throws SQLException {
        Cursor mCursor = database.query(true, "Extable", new String[] { "_id",
                        "date","amount", "des","category" }, "_id ="+ rowId, null, null, null, null, null);
        if (mCursor != null) {
            mCursor.moveToFirst();
            return (mCursor.getString(1));
        }
        return null;
    }

    public Cursor rawQuery(String string, Object object) {
        // TODO Auto-generated method stub
        return null;
    }

请任何人帮助我.感谢你

1 个回答
  • 这样做:

    Cursor cur = db.rawQuery("SELECT SUM(myColumn) FROM myTable", null);
    if(cur.moveToFirst())
    {
        return cur.getInt(0);
    }
    

    2023-02-10 14:35 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有