【发布时间】:2015-04-26 22:38:17
【问题描述】:
首先,我是 sql 新手。
现在,我正在为我的 Android 应用程序构建一个带有 sqlite 的标记系统,该应用程序使用 3 个表(项目、标签、标签映射),基于找到的这个“毒药”解决方案 here,但我不确定如何机械工作,我将如何从该 itemsTable 中选择具有特定标签的所有项目。
itemsTable
项目中
2
3
4
tagsTable
标签标签
2“红宝石”
3“java”
7 "c"
标签映射
itemid tagid
2 3
3 7
2 2
4 7
我正在尝试以下方式:
SELECT* FROM itemsTable INNER JOIN tagmap ON tagmap.itemid= itemsTable.itemid AND tagmap.tagid=tagsTable.tagid WHERE tagsTable.tagid= desiredid
但这似乎是错误的。
顺便说一句:所有 itemid 和 tagsid 都是自动递增的主键
欢迎任何答案或创建标签系统(其中一个项目可以有多个标签)的替代方法。
【问题讨论】:
-
您的查询看起来不错。