有2个表的示例:
Table A: `id`, `a`, `b`, `c`, `X`, `Y`, `Z`
Table B: `id`, `h`, `i`, `j`, `X`, `Y`, `Z`
我正在做一个Table C
包含X
,Y
,Z
列要么A
和B
,并使用一键链接数据,即:
A `id`, `a`, `b`, `c`, `id_C`
B `id`, `h`, `i`, `j`, `id_C`
C `id`, `X`, `Y`, `Z`
创建这些表不是问题。
我的问题是改变目前的数据A
,B
为A
,B
,C
。
我该怎么做?
我能想到的唯一方法是A
在C
移动数据时将id的列添加到其中,而不是连接两个表,然后A
再次删除id的列。之后,请执行相同的操作Table B
。
编辑
我正在使用MySQL 4.1.22
解决方案:
Table C
用列创建id, X, Y, Z
(id为自动递增)。INSERT INTO C (X, Y, Z)
SELECT X, Y, Z
FROM (
SELECT X, Y, Z FROM A
UNION
SELECT X, Y, Z FROM B) As tempC
ALTER
表A
并B
添加新列id_C
。id_C
像这样更新:UPDATE A
SET id_C = (SELECT id FROM C WHERE C.X = A.X AND C.Y = A.Y AND C.Z = A.Z)
A
和都做4之后B
)X, Y, Z
从A
和下降B
。本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句