MySQL嵌套的INSERT语句

时间:2014-09-26 08:02:02

标签: mysql nested sql-insert

你能在MySQL中嵌套INSERT语句吗?

我有这个架构:

T1(ids)
T2(id, x, ...)
T3(id, y, ...)

我需要做的是将数据从表T2复制到表T3,同时修改某些字段并将新数据添加到T3,然后更新父表T1引用新记录。

我知道我们可以运行这样的命令来复制表之间的记录:

INSERT INTO T3 SELECT id+1000, X, 'new', ... FROM T2

但是,我需要将已创建的新记录通过管道传输到T1。 像这样:

INSERT INTO T1 SELECT id FROM 
    (INSERT INTO T3 SELECT id+1000, X, 'new', ... FROM T2)

这可能吗?我的ID不会自动增加,T1T2T3的ID列表,每条记录都有一些额外的数据。 T2T3不是相同的表格。

我只需要使用新ID将数据从T3复制到T2,然后更新T1以反映所创建的新记录,如果在1个事务中,可能的。

0 个答案:

没有答案