从现有表中填充多个到多个表

use*_*327 2 sql database many-to-many

我有两个已填充数据的现有表

表A --tableA_id --contentA

表B --tableB_id --contentB

现在,我想创建一个多对多的关系表

表A_B --tableA_id --tableB_id

问题是如何使用表A和表B中的现有数据编写一个sql脚本(我是sql的新手)来填充表A_B.非常感谢,

标记

Nat*_*han 5

如果要填充表A_B,则必须执行以下操作:

INSERT INTO A_B (tableA_id, tableB_id)
SELECT A.ID, B.ID FROM A CROSS JOIN B
Run Code Online (Sandbox Code Playgroud)

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
Run Code Online (Sandbox Code Playgroud)