mysql - 数据库设计 : Keeping track of tag changes between revisions

标签 mysql database-design tags versioning

我正在构建一个类似于 the one Stack Overflow has 的修订系统有一件事我无法理解,区分多个修订版之间标签差异的最佳方法是什么?

我能想到的最简单的方法是我们有 3 个表、修订、标签和另一个链接两者。

然后每个修订版都有自己的一组标签,唯一的问题是当你想显示所有修订版时,即使它们没有改变,也需要重新比较标签以找出差异。

也许可以添加一个或两个额外的字段来标记已添加或从先前修订中删除的标签。

有更好的方法吗?

最佳答案

不要使您的架构过于复杂,也不要过早优化。修订标签的成对比较是一个非常廉价的操作(前提是您的所有数据都在内存中)并且可以在准备 View 模型时完成。

关于mysql - 数据库设计 : Keeping track of tag changes between revisions,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1520550/

相关文章:

mysql - 在 MySQL 的一个字段中有多个 FK 是个好主意吗?

android - 从 NFC 标签读取 URI 时丢失数据

PHP MySQL 将一张表与另一张表连接两次

mysql - 存储行数还是只计算行数?

mysql - 具有黑名单和收藏夹的用户注册系统的数据模型?

azure - 一次性为所有虚拟机分配标签

xml - 类似sgml-tag 的功能,用于带DocBook 标签的nXml 模式

java - 使用 JDBC 执行多个 SQL 语句 (CRUD)

mysql - 数据库架构问题,产品类型

php - 左连接重复项