标签的数据库架构(例如,每个帖子都有一些可选标签)

Pur*_*ome 7 sql architecture schema many-to-many

我有一个像SO,Wordpress等网站,你在那里发帖,你可以有(可选)标签.

什么是常见的数据库架构来处理这个问题?我假设它有很多< - >多个结构,有三个表.

有人有主意吗?

Sam*_*ron 8

三表多对多结构应该没问题.

例如. Posts, PostsToTags(post_id,tag_id), Tags

关键是索引.确保PostsToTags表被双向索引(post_id,tag_idtag_id,post_id)如果读取性能非常关键,您可以引入索引视图(可以为您提供post_name,tag_name)

您当然也需要帖子和标签上的索引.