我有3个表MySQL数据库:如何找到补充标签?
- 叫 “轨道”记录的主表(如音乐)
- 一个标签表 所谓的“标签”
- 联接表这两个叫做“标签”
标签表基本上是一个流派的列表,它是预定义的。一个曲目可以有一个或多个标签(通过连接表)。
想法是,用户检查他或她想要找到曲目的流派(标签)。但我也希望界面反映哪些标签不再“有用”,即与当前选择标签互补的标签。
编辑:我错过的是,我需要找到与当前选择的集标签互补的标签。看到我下面的评论。例如:用户选择“摇滚”和“流行”标签,并显示匹配“摇滚”+“流行”的曲目列表。但假设数据库中没有跟踪也匹配“爵士乐”。在这种情况下,我想禁用界面中的“爵士”标签,因为“摇滚”+“流行”+“爵士”会给出零结果。
有没有一种巧妙的方式来与MySQL做到这一点?
我添加了另一个选项,它实际上只是第一个选项的重复,但也许它不会杀死您的客户端。 – scottm 2009-09-03 18:25:38
一位朋友指出了一些事情,这使事情变得复杂:查询应该找到可能的“连续”标签,可以这么说。即如果你寻找标签1和/或3,你会发现有一个或两个的轨道。到现在为止还挺好。但是下面的查询会告诉我们轨道是否有标签1&X,_or_ tag 3&X,但实际上需要的是看是否有轨道有标签1 _和_ 3 _和_ X.这就使得这一切非常棘手,至今我可以告诉 – Flambino 2009-09-04 00:43:02