我有两个表(A 和 B),有两列共同(x 和 y)。我想在 x 上内连接 A 和 B,但只保留 A 的列 y 的值(左连接)。我正在寻找一种组合两个 y 列的方法(不能只在 select 语句中指定 Ay )。我怎样才能做到这一点?
例子
表 A
x y
1 2
3 4
5 6
7 8
表 B
x y
1 2
3 8
9 null
11 0
我希望结果表看起来像
x y
1 2
3 4
我有两个表(A 和 B),有两列共同(x 和 y)。我想在 x 上内连接 A 和 B,但只保留 A 的列 y 的值(左连接)。我正在寻找一种组合两个 y 列的方法(不能只在 select 语句中指定 Ay )。我怎样才能做到这一点?
例子
表 A
x y
1 2
3 4
5 6
7 8
表 B
x y
1 2
3 8
9 null
11 0
我希望结果表看起来像
x y
1 2
3 4
select a.x, a.y
from TableA a
inner join TableB b on a.x = b.x
你的意思是:
SELECT *
FROM A
INNER JOIN B b1 ON A.x = b1.x
LEFT JOIN B b2 ON a.y = b2.y
看看SQL exclude a column using SELECT * [except columnA] FROM tableA? 第二个答案。不是最佳解决方案,但您可以将其用作解决方法。通常,您应该明确指定完整的列列表。