我有两个已填充数据的现有表
表A --tableA_id --contentA 表B --tableB_id --contentB现在,我想创建一个多对多关系表
表A_B --tableA_id --tableB_id
问题是如何使用表A和表B中的现有数据编写一个sql脚本(我是sql的新手)来填充表A_B。非常感谢,
标记
答案 0 :(得分:5)
如果要填充表格A_B,则必须执行此操作:
INSERT INTO A_B (tableA_id, tableB_id)
SELECT A.ID, B.ID FROM A CROSS JOIN B
CROSS JOIN将表A中的每一行与表B中的每一行相关联。
如果要将表A中的某些行与表B中的某些行相关联,则需要更具体,并执行以下操作:
INSERT INTO A_B (tableA_id, tableB_id)
SELECT A.ID, B.ID FROM A INNER JOIN B
ON A.some_field = B.some_other_field