Android 在两个表之间应用内部联接结果失败
我有两张桌子。姓名为tbl\U模块联系人和tbl\U模块联系人详细信息 现在,tbl_Module_Contact-->列是---->ContactID、CategoryID、TypeID、CustomerID、Status allNumeric 现在,第二个表tbl_Module_Contact_Details----->列是---->RecordID、ContactID、LanguageID、关键字、图标、LocationName、Logo、Logo、这里的Logo、Ico、LocationName、Logo和KeywordsString类型,其他所有列都是数字类型 现在我想要的是。使用内部联接创建查询。我想从tbl\u模块\u联系人\u详细信息中获取所有数据,其中Android 在两个表之间应用内部联接结果失败,android,sqlite,Android,Sqlite,我有两张桌子。姓名为tbl\U模块联系人和tbl\U模块联系人详细信息 现在,tbl_Module_Contact-->列是---->ContactID、CategoryID、TypeID、CustomerID、Status allNumeric 现在,第二个表tbl_Module_Contact_Details----->列是---->RecordID、ContactID、LanguageID、关键字、图标、LocationName、Logo、Logo、这里的Logo、Ico、Location
status=1
和关键字
,我通过的categoryID
和LanguageID
,以及Logo name
以.jpg
或.png
结尾,最后按LocationName
排序首先Open()
yourDB
,并执行以下查询
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();
}
在此查询中,您需要传递LanguageID
、CategoryID
和searchword
。进入光标的所有数据
获取并使用它
尝试此
查询
并就此给我反馈看一看好吗首先告诉我您的数据库已准备好,您想执行此查询吗?@SimplePlan ya准备好了只需构建一个query@user3414107让我试试这个。@user3414107 status=1来自您的tbl\u模块\u联系人
right?天哪!太棒了。你的问题是对的。但等等,这里有一个问题。我需要按字母顺序查找数据,但这里不是。@user3414107数据不按字母顺序是什么意思?我的意思是我的数据不按字母顺序。我想可能是因为我的一些数据包含位置名称大写字母。所以这可能是一个问题,我有一个解决方案,在order by之后将COLLATE NOCASE添加到查询中LocationName@SP你就像SQLITE的父亲。我的意思是,这是一项充满魅力的工作。非常感谢你。