MySQL合并标记记录

时间:2015-11-17 12:55:23

标签: mysql sql database merge tags

我有一个有多种关系的标签系统。有时会有类似的标签应该合并为一个。

允许call tagA应该合并的标记,然后消失,tagB标记现在将采用tagA关系。

为了澄清,我需要的是:之前与tagA相关的每个实体现在都与tagB相关,然后删除tagA。

基本结构是这样的:

tag
---------------
tag_id

description



tag_news
---------------
tag_news_id

tag_id

news_id



tag_pages
---------------
tag_pages_id

tag_id

pages_id

依旧......

我知道我可以简单地说:

1)更新与'标记'相关的所有表格表格更改了tagB' id的标签。

2)从'标记'中删除tagA表

但是与标签系统的关系不断增加,我想要一个解决方案,我不需要通知每个正在查询中更新的表。

我想过使用UPDATE级联,但是我无法更新tagA'标记'标记'标记' table因为我会以两个具有相同主键的记录结束。

有关如何使这项工作的任何想法?

非常感谢。

1 个答案:

答案 0 :(得分:0)

怎么样: 1.将TagB作为新标签插入; 2.更新将TagA更改为TagB的所有表; 3.从标签表中删除TagA