2012-12-04 5 views
1

j'ai deux tables existantes avec des données peupléespeuplent plusieurs à plusieurs table à partir des tables existantes

tableau A --tableA_id --contentA

tableau B --tableB_id --contentB

Maintenant, je veux créer une table de relation many to many

table A_B --tableA_id - tableB_id

la question est que la façon d'écrire un script SQL (je suis nouveau à sql) pour remplir le tableau A_B en utilisant les données existantes à partir du tableau A et tableau B. Un grand merci,

Mark

Répondre

3

Si vous voulez remplir la table A_B, vous auriez à faire:

INSERT INTO A_B (tableA_id, tableB_id) 
SELECT A.ID, B.ID FROM A CROSS JOIN B 

CROSS JOIN concerneront chaque ligne dans le tableau A avec chaque ligne dans le tableau B.

Si vous w ant pour relier certaines lignes dans la table A avec quelques lignes dans la table B, vous devez être plus précis, et faire quelque chose comme:

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 
+0

Merci beaucoup – user1808327

Questions connexes