老实说,我不知道如何正确命名这个问题..
我有一个包含这些列的 sqlite 数据库。
private final String createDb = "CREATE TABLE IF NOT EXISTS " + TABLE_NAME + " ( "
+ C_ID + " INTEGER PRIMARY KEY AUTOINCREMENT, "
+ DATE + " text, "
+ SUBCAT + " text, "
+ ITEM + " text, "
+ PRICE + " integer, "
+ QUANTITY + " integer, "
+ WEIGHT + " integer, "
+ VOLUME + " integer, "
+ SALE + " text, "
+ STORE + " text, "
+ EXTRA + " text) ";
并试图ViewBinder
用来调用如下所示的 SQL 查询。
public String avgPrice() {
ourHelper = new DbHelper(ourContext);
db = ourHelper.getReadableDatabase();
String sql = "SELECT AVG(PRICE) as avgprice, ITEM FROM " + TABLE_NAME + " GROUP BY " + ITEM;
Cursor d = db.rawQuery(sql, null);
我最初有一个带有 XML 的 ListView,其中包含每个列的文本视图。这只是将每列以 1:1 的比例从数据库中拉出。使用适配器很容易。我正在尝试使用ViewBinder
来检测每个输入项目的平均价格(如果有重复的实例,例如不同的日期)并显示该项目。
本质上,我希望 ListView 仅显示每个项目一次(平均价格),当您选择它时,您可以查看每个存储的实例(如历史记录)。
从我所在的地方执行此操作的最简单方法是什么?假设ViewBinder
可以使用上面的方法(或查询),我如何提取ITEM and AVG(PRICE)
只放入适当的视图一次以实现我的“历史”功能?