我有一张桌子,上面写着

+---------------+
| Field         |
+---------------+
| a             |
| b             |
| c             |
| d             |
| e             |
| f             |
+---------------+

我想把这些数据像
+---------------+
| Field         |
+---------------+
| id  (Autoincrement) |
| a             |
| b             |
| c             |
+---------------+

像这样
+---------------+
| Field         |
+---------------+
| id  (Equal to the one in tblB) |
| d             |
| e             |
| f             |
+---------------+

在mysql中有什么方法可以做到这一点吗?或者唯一的办法就是写剧本?

最佳答案

如果atblA的主键,则可以分两步执行此操作:

INSERT INTO tblB (a,b,c)
SELECT a,b,c FROM tblA

然后:
INSERT INTO tblC (id,d,e,f)
SELECT b.id,a.d,a.e,a.f
FROM tblA a
JOIN tblB b ON a.a = b.a

关于mysql - 将数据从一个表插入到多个表,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15019040/

10-16 15:37