我有3张表:
links (id, linkName) tags (id, tagName) tagsBridge (tagID, linkID)
我正在尝试支持显示类似SOF中的相关标签。因此,如果您单击标签“ XYZ”,那么现在我将显示所有带有标签“ XYZ”的链接,但我也想显示所有其他标签的唯一列表,这些其他标签是人们为这些项目添加的,而这些项目也已为“ XYZ”添加了标签
什么是最快的查询方式
尝试:
SELECT t.tagname FROM TAGS t JOIN TAGS_BRIDGE tb ON tb.tagid = t.id JOIN (SELECT li.id FROM LINKS li JOIN TAGS_BRIDGE tb ON tb.linkid = li.id JOIN TAGS t ON t.id = tb.tagid WHERE t.tagname = 'XYZ') x ON x.id = tb.linkid GROUP BY t.tagname