Mysql:在子查询中插入语句

时间:2015-10-14 14:48:55

标签: mysql subquery insert-select

我有以下表格架构:

表1:

Id(PK,autoIncrement)

名称

表_2:

Table1_Id

Table3_Id

表_3:

Id(PK,autoIncrement)

Table_2将Table_1和Table_3的ID组合作为其主键。我需要在Table_1和Table_3中为Table_1的所有行插入值。我正在尝试类似的事情:

Insert into Table_2(Table1_Id) Select Table_1.Id from Table_1

但我的问题是Table_1和Table_3没有直接关系,Table_2需要Table_3的Id。是否可以在上述查询中插入并从table_3获取新的Id(插入表2)?请建议一种使用mysql查询实现此目的的方法。

以下是如果可能的话可能有所帮助的想法。请忽略此处的语法:

Insert into Table_2(Table1_Id, Table3_Id) Select Table_1.Id, (Insert into Table_3 values (some_values..)) from Table_1

(如果内部插入查询将返回新添加的Id)

这里进一步解释是一个粗略的例子:

目前表1有a和b,现在我想在表3中添加新的x和y。然后表2将有2行a,x和b,y。 A& x是链接但是通过表2.现在只有表1有行,其他两个表是空的

如果我在这里不清楚解释问题,请告诉我。

0 个答案:

没有答案