我在数据库中有产品表。里面的产品表有产品棒和价格。我想获得所有的最低价格并在listView里面显示。让我们说产品包里面有三款产品,价格RM1(更低)。但我的问题是它只显示listView中的productPrice的最后一列。
public Cursor getMinPrice(String barcode1) {
// TODO Auto-generated method stub
String[] args={barcode1};
String name="";
Cursor c= database.rawQuery("SELECT " + SQLiteHelper.product_id
+ " as _id, "+SQLiteHelper.productName+","+SQLiteHelper.productQtty+","+SQLiteHelper.product_ShoppingF+" ,"+SQLiteHelper.product_FId+" ,MIN("+SQLiteHelper.productPrice+") FROM "+SQLiteHelper.productTable+" WHERE "+SQLiteHelper.productBar+ "=?",args);
//return database.query(SQLiteHelper.productTable,null, "price=(SELECT MAX("+SQLiteHelper.productPrice+"))", null, null, null, null);
try{
c.moveToFirst();
return c;
}finally{
}
}
public String getProductNameLower(Cursor c) {
// TODO Auto-generated method stub
return((c.getString(1)));
}
}
我的查询是否有任何错误?因为它只获得最低价格的最后一列。希望有人能指导我......谢谢..
答案 0 :(得分:1)
使用MIN()
,您的查询会搜索包含最低价格的记录,并返回该记录。
如果你想拥有多条记录,请使用这样的查询,它会返回三个最小价格的记录:
SELECT * FROM product ORDER BY price LIMIT 3
答案 1 :(得分:0)
您可以使用以下查询获取最低价格
SELECT MIN(productPrice)FROM productTable