我正在处理Django应用程序并创建了一个新表tblA
,它有一个链接到tblB
主键的外键。
现在tblB
已经有几个条目(因此已有几个主键)。
我想运行一个SQL查询,它将为tblA
tblB
内的每个主键创建一个新行,并复制相应的外键,并tblB
中所有其他列的默认值插入行。
我希望我足够清楚!
答案 0 :(得分:0)
您忘记粘贴表格结构..我正在考虑如下 -
TBLA ( aCol1_PK(主键), acol2_desc(介绍) )
截至目前,仅举两个例子。
现在表B
TBLB ( bCol1, bCol2, bCol3_FK(外键) )
现在假设你有默认值 -
bCol1 - “B_Col1_default_val” bcol2 - “B_Col2_default_val”
对于这种情况,如果你想从表A中插入p_key的行(表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))
如果要为表A中存在的所有主键值插入一行,则< - p>
insert into tblB(col1,col2,col3)
( select 'b_col_default_val','b_col_default_val', acol1_pk
from tbla a )
我希望它会对你有所帮助.. 如果您需要任何澄清,您可以询问/评论。