Table 1 Table 2
Number | Code Code | Description
1234 A A Something
1235 B C Something else
1246 C D Something other
1247 A
1248 B
1249 A
Run Code Online (Sandbox Code Playgroud)
我想找到不同的Code值并得到这样的回报:
1 | 2
-------
A A
B
C C
D
Run Code Online (Sandbox Code Playgroud)
我无法弄清楚如何编写一个可以返回上述结果的SQL查询.任何人都有这样或类似的查询经验?
gbn*_*gbn 15
在适当的RDBMS中:
SELECT
T1.Code, T2.Code
FROM
(SELECT DISTINCT Code FROM Table1) T1
FULL OUTER JOIN
(SELECT DISTINCT Code FROM Table2) T2
ON T1.Code = T2.Code
Run Code Online (Sandbox Code Playgroud)
在MySQL ... UNION删除重复项
SELECT
T1.Code, T2.Code
FROM
Table1 T1
LEFT OUTER JOIN
Table2 T2 ON T1.Code = T2.Code
UNION
SELECT
T1.Code, T2.Code
FROM
Table1 T1
RIGHT OUTER JOIN
Table2 T2 ON T1.Code = T2.Code
Run Code Online (Sandbox Code Playgroud)