在两个表之间应用内部联接结果失败

时间:2014-03-13 12:06:07

标签: android sqlite

我有两张桌子。名称为 tbl_Module_Contact tbl_Module_Contact_Details

现在,tbl_Module_Contact ---->列是----> ContactID,CategoryID,TypeID,CustomerID,状态全部数字

现在,第二个表tbl_Module_Contact_Details ---->列是-----> RecordID,ContactID,LanguageID,关键字,图标,LocationName,这里的徽标Ico,LocationName,徽标和关键字字符串类型以及所有其他数字

现在我想要的是。使用 INNER JOIN 创建查询。我想从 tbl_Module_Contact_Details 获取我已经通过的status=1keywordcategoryIDLanguageID以及Logo name的所有数据}以.jpg.png结尾,最后按LocationName排序。

1 个答案:

答案 0 :(得分:1)

首先Open()您的DB并执行以下查询

Cursor mCursor = db
            .rawQuery(
                    "SELECT * FROM tbl_Module_Contact_Details INNER JOIN tbl_Module_Contact ON tbl_Module_Contact_Details.ContactID=tbl_Module_Contact.ContactID and tbl_Module_Contact_Details.LanguageID='"
                            + LanguageID
                            + "' and tbl_Module_Contact.CategoryID='"
                            + CategoryID
                            + "' and tbl_Module_Contact.Status=1 Where Keywords like '%"
                            + searchword
                            + "%' and (Logo like '%.jpg' OR Logo like '%.png') order by LocationName ",
                    null);

    if (mCursor != null) {
        mCursor.moveToFirst();
    }

在此查询中,您需要传递LanguageIDCategoryIDsearchword。所有进入Cursor的数据都会获取并使用它。

试试这个Query,并就此提供反馈