【问题标题】:What kind of table to use for tags system?标签系统使用什么样的表格?
【发布时间】:2010-12-09 21:10:34
【问题描述】:

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

例如,如果我使用包含两列、tags 和 postId 的表,如果某个标签很受欢迎,我可以拥有令人难以置信的次数!所以我不确定这是否是最好的方法。

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

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

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

【问题讨论】:

标签: php mysql tags


【解决方案1】:

你想要一个 post 表、一个 tags 表和一个 join 表:

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

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

【讨论】:

  • 正好 - 这就是你处理任何 N:N 关系的方式
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2013-07-22
  • 2011-03-19
  • 2017-11-15
  • 2010-10-07
  • 1970-01-01
  • 2015-01-01
  • 2011-06-16
相关资源
最近更新 更多