我正在尝试将数据从一个表复制到另一个表。T1、T2 是两个设置适当的表,它们的 PK 都是 UQ。特别是我想将值 R 放入 GZHTable3 中的 Combined_Data 表中。R 是非唯一的,必须是当 T1.Aid = T2.Gid 时,所以我有:
INSERT INTO Combined_Data (R)
SELECT T2.R
FROM GZHTable3 as T2
JOIN Combined_Data as T1 ON T1.Aid = T2.Gid;
Aid 和 Gid 都是各自表的 UQ 和 PK。据我所知,它是反对的,因为 Aid 和 Gid 都是 PK。
我并不想只复制 T2.R 的值,但它必须在 Aid、Gid 上的两个表之间同步。为什么反对,解决方案是什么?(一些数据在表之间复制,但 R 不是)。
谢谢
澄清:
表 1 (T1)
Aid R Data fields .....
UQid1 0 ........ data .........
UQid2 0 ........ data .........
表 2 (T2)
Gid R Different data fields....
UQid6 R6 ....... data ....
UQid12 R12 ....... data ....
UQid23 R23 ....... data ....
UQid1 R1 ....... data ....
T1、T2 的顺序不一样。对于 T1 中的每个 Aid,我必须在 T2 中找到 Gid 的相应值(例如 UQid1),并将 T2 中该行中 R 的(严格)非零值复制到 T1 中的相应行中。
T2 的所有元素都是非空的,并且出于目前的目的是数字;T2 远大于 T1