什么样的表用于标签系统?

时间:2010-12-09 21:10:34

标签: php mysql tags

我想在我正在处理的网站上实施标记系统。 我对此有一个理论上的问题。我如何将这些标签存储在我的数据库中?

例如,如果我使用一个包含两列,标签和postId的表格,如果它很受欢迎,我可能会有一定数量的标签!所以我不确定这是不是最好的方式。

如果我想在帖子中添加标签,并且我有3个标签为“酷”的帖子,我会有这样的内容:

tag-----id
cool----23
cool----12
cool----39

有没有更好的方法来实现这一目标?

1 个答案:

答案 0 :(得分:6)

您需要一个帖子表,一个标签表和一个连接表:

CREATE TABLE posts (id, title, body)
CREATE TABLE tags (id, tag)
CREATE TABLE posts_tags (tag_id, post_id)

这很好。确保在tag,tag_id和post_id列上添加索引。