如何在现有系统上合并标签

Sam*_*Sam 5 mysql sql database database-design

我们有一个简单的界面来标记特定问题

(e.g. entry has 1..many tags and each tag entry has a foriegn key pointer back to the entry table)

1.    What is the current production version of the jdk? (Tags: jdk6 jdk-6 jdk java)
2.    In what version was java.util.spi package introduced? (Tags: jdk-6, jdk7, jdk5)
3.    Which version of java is going to be released soon? (Tags: jdk-6, jdk7, jdk8)
Run Code Online (Sandbox Code Playgroud)

我们想将名为"jdk-6"的所有标签合并到jdk6.我们如何在接近生产但包含有用数据的系统中实现这一目标.

在[1]中,需要删除jdk-6,因为jdk6已经存在.在[2,3]中,jdk-6需要重命名为"jdk6".

我需要什么样的脚本才能有效地迁移这些数据.

编辑

create table entry (id, question, ...)
create table entry_tag (id, entry_id, tag)
Run Code Online (Sandbox Code Playgroud)

a'r*_*a'r 0

我首先创建一个新表,其中包含包含标签“jdk-6”或“jdk6”的条目 ID 列表。

然后我将删除标签“jdk6”和“jdk-6”的所有标签记录。

然后我将使用开始时创建的表将它们添加回来。