如何从sqlite android中的两个表中搜索数据?

时间:2014-02-22 05:55:03

标签: android database search android-sqlite

我有两张桌子,我想搜索特定的名字,血型和职业。我已经尝试了很多,但没有得到任何东西。我正在使用下面的代码进行搜索。任何人都可以帮助我。 感谢。

“从成员中选择blood_group,keymembers在哪里'blood_group'”

2 个答案:

答案 0 :(得分:0)

尝试此查询

SELECT Item.No,Route_Line.No
From Item,Route_Line
Where Route_Line.Item_No = Item.No    //Item & Route_Line are table
                                      //No & Item_No are column name.

根据需要使用JOIN。希望这有帮助。

答案 1 :(得分:0)

public ArrayList<Coupon> getMyCoupons(String categoryId,String cardId,boolean isFavorite){
    ArrayList<Coupon> coupons = new ArrayList<Coupon>();
    StringBuffer query = new StringBuffer();
    query.append("SELECT * from " + DatabaseHelper.MY_COUPON_TABLE_NAME); 
    if(categoryId != null && categoryId.length() >0){
        query.append(", MyCouponCatMapping WHERE ");
        query.append(" MyCouponCatMapping.CategoryId = " + categoryId + " AND MyCoupons.Id = MyCouponCatMapping.CouponId");
        if (isFavorite) {
            query.append(" AND MyCoupons.IsFavorite = 1");
        }
    } else if (cardId != null && cardId.length() > 0)   {
        if(categoryId != null && categoryId.length() >0){
            query.append(" AND ");
            query.append("tagCardId = '" + cardId +"'");
        } else  {
            query.append(" WHERE ");
            query.append("tagCardId = '" + cardId +"'");
            if (isFavorite) {
                query.append(" AND MyCoupons.IsFavorite = 1");
            }
        }

    } else if (isFavorite)  {
        query.append(" WHERE MyCoupons.IsFavorite = 1");
    }
    coupons = getCouponArrayFromQuery(query.toString());
    return coupons;
}

这里你可以找到你的解决方案....如果你需要从数据库中获得简单的1-2值。不要使用arraylist ..使用简单的方法..