我需要使用 MySQL 复制表中的数据,但是这些数据与其他表具有一对多的关系。
表 A [1]---------[N] 表 B [1]---------[N] 表 C
所以我需要做的是从表一中复制一个条目,并将其与其他表中的相关数据相同。
如果这是一对一的关系,我可以做到这一点,但我真的不知道在这种情况下该怎么做。
那这个呢?
INSERT INTO TABLE A1 (COL1, COL2, COL3)
SELECT * FROM TABLE A
[WHERE CONDITION]
INSERT INTO TABLE B1 (COL1, COL2, COL3)
SELECT B.COL1, B.COL2, B.COL3
FROM TABLEB AS B
INNER JOIN TABLEA
ON [RELATIONSHIP]
[WHERE CONDITION] --SAME AS THE FIRST
INSERT INTO TABLE C1 (COL1, COL2, cOL3)
SELECT C.COL1, C.COL2, C.COL3
FROM TABLEC AS C
INNER JOIN TABLEB
ON [RELATIONSHIP C=B]
INNER JOIN TABLEA
ON [RELATIONSHIP B=A]
[WHERE CONDITION] --SAME AS THE FIRST
编辑:您可以根据此指定自动增量的值: http://forums.mysql.com/read.php?10,167702,167717#msg- 167717