我是一名大学生,与三位同事一起为一个项目构建 Web 应用程序,我拿了数据库部分。
我们的站点基本上是一个链接共享站点并支持标签,在Mysql数据库中存储标签的有效方法是什么?我想到了这些方法:
1-标签表:链接和标签之间的关系是多对多的,所以我必须用一个中间表打破它,我想不出一个SQL语句来获取带有特定标签的链接示例:用户可能会搜索链接标记为 (php , mysql ) 或 (hardware-issues , gigabyte)。
此外,即使我这样做了,它也需要 join ,我们正在使站点全球化,这意味着有一天数据库将非常庞大,我认为我们无法加入。
2-将标签作为一个数组放在链接表中:我可以放置一个字符串数组,这意味着只有一个选择语句(我认为比 join 更好)但是操作数组会很困难,链接的发布者可能会编辑他/她的链接,我可以想出一种方法来解决这个问题,但我不确定这是否是最有效的方法,当然它没有标准化,数据库会增长得更快,但我认为在服务器上,速度比尺寸。
那么有没有更好的方法呢?