如何不仅显示两个表(表A和表B)中的重叠ID,还显示两个表中的唯一ID? 以下是示例代码:
SELECT A.ID AS ID
FROM A
FULL OUTER JOIN B ON A.ID = B.ID
我认为我可以对SELECT
行做些什么,但我不知道如何。
答案 0 :(得分:2)
coalesce()
返回一组参数中的第一个非null
值。那是你在找什么?
rextester演示:http://rextester.com/QYAZV8300
create table a (id int)
insert into a values (1),(3),(5)
create table b (id int)
insert into b values (2),(3),(4)
select
a.id as A_Id
, b.id as B_Id
, coalesce(a.id,b.id) as Id
from a
full join b
on a.id = b.id
返回:
+------+------+----+
| A_Id | B_Id | Id |
+------+------+----+
| 1 | NULL | 1 |
| 3 | 3 | 3 |
| 5 | NULL | 5 |
| NULL | 2 | 2 |
| NULL | 4 | 4 |
+------+------+----+