我有三个具有相同列的表,我需要将它们合并到一个表中。一些 ID 出现在多个表中,我需要首先使用编号最小的表中的 ID,并在任何后续表中忽略该 ID。请注意,只有 ID 相同,表之间没有任何重复的行。
举个例子,这三个表需要转换为最终表:
**Table 1**
+----+----+----+
| ID | C1 | C2 |
+----+----+----+
| 01 | AA | BB |
| 02 | CC | DD |
| 03 | EE | FF |
+----+----+----+
**Table 2**
+----+----+----+
| ID | C1 | C2 |
+----+----+----+
| 03 | GG | HH |
| 04 | II | JJ |
| 05 | KK | LL |
+----+----+----+
**Table 3**
+----+----+----+
| ID | C1 | C2 |
+----+----+----+
| 01 | MM | NN |
| 04 | OO | PP |
| 06 | QQ | RR |
+----+----+----+
**Resulting Table**
+----+----+----+
| ID | C1 | C2 |
+----+----+----+
| 01 | AA | BB |
| 02 | CC | DD |
| 03 | EE | FF |
| 04 | II | JJ |
| 05 | KK | LL |
| 06 | QQ | RR |
+----+----+----+
我对使用左连接和“IS NULL”条件的解决方案有一个模糊的想法,但这可能会很快变得复杂,尤其是在表数量增加的情况下。
有没有办法只在一列上指定重复项,而不是在整行上?