2
我正在研究Django应用程序,并创建了一个新表tblA
,它具有链接到tblB
主键的外键。使用来自其他表主键的所有外键填充表
现在tblB
已经有几个条目(因此已经有几个主键)。
我想运行的SQL查询,将创建一个新行内tblB
在tblA
每一个主键与对应的外键插入行中tblB
所有其他列的复制和默认值。
我希望我已经够清楚了!
我正在研究Django应用程序,并创建了一个新表tblA
,它具有链接到tblB
主键的外键。使用来自其他表主键的所有外键填充表
现在tblB
已经有几个条目(因此已经有几个主键)。
我想运行的SQL查询,将创建一个新行内tblB
在tblA
每一个主键与对应的外键插入行中tblB
所有其他列的复制和默认值。
我希望我已经够清楚了!
你已经忘了贴你的表结构。我正在考虑为如下─
TBLA ( aCol1_PK(主键), acol2_desc(介绍) )
截至目前只取只有两列的例子。
现在对于表B中
TBLB ( bCol1, bCol2, bCol3_FK(外键) )
现在让我们假设你有默认值 -
bCol1 - “B_Col1_default_val “ bcol2 - ”B_Col2_default_val“
对于这种情况,如果你想插入ERT行从表p_key的值A,A是不存在于表B,你可以试试下面的查询 -
insert into tblB(col1,col2,col3)
(select 'b_col_default_val','b_col_default_val', acol1_pk
from tbla a
where a.acol1_pk not in (select b.bcol3_fk from tblb b))
如果你想插入一行对所有的主键出现在表格中的那么值 -
insert into tblB(col1,col2,col3)
(select 'b_col_default_val','b_col_default_val', acol1_pk
from tbla a)
我希望它能帮到你.. 如果你需要任何澄清你可以问/评论。
这可能会回答你的问题。 。 。 http://stackoverflow.com/questions/11397273/how-to-minimize-number-of-queries-when-adding-updating-a-row-in-a-table-with-for/11397510#11397510。 – 2012-07-09 20:36:32