ORACLE 联接表 [重复]
Posted
技术标签:
【中文标题】ORACLE 联接表 [重复]【英文标题】:ORACLE JOIN TABLES [duplicate] 【发布时间】:2016-08-23 05:48:41 【问题描述】:我有
T1: USER_ID OSX
1 Y
2 Y
T2: USER_ID android
1 Y
3 Y
我想按如下方式加入表格,但我不知道如何
T3: USER_ID ANDROID OSX
1 Y Y
2 null Y
3 Y null
【问题讨论】:
【参考方案1】:使用full join
,更好地处理空值:
select coalesce(t1.user_id, t2.user_id) as user_id,
coalesce(t2.android,'N/A') as android,
coalesce(t1.osx,'N/A') as osx
from t1
full join t2 on t1.user_id = t2.user_id
【讨论】:
null 是 null,为什么要在数据库层使用 dummy-value 'N/A'?!【参考方案2】:你想要一个full outer join
:
select coalesce(t1.user_id, t2.user_id) as user_id,
t2.android, t1.osx
from t1 full join
t2
on t1.user_id = t2.user_id;
【讨论】:
以上是关于ORACLE 联接表 [重复]的主要内容,如果未能解决你的问题,请参考以下文章