Oracle内部/外部/完全联接
我有两张桌子。表一和表二 在表1中,我有两列table1.userid和table2.full_name,在表2中,我有两列table2.userid和table2.ssn 我想要用户ID同时出现在表1和表2中的记录 如果在表2中存在用户ID在表1中的记录,则应忽略这些记录。如果不存在,则还需要表1中的数据。还需要表2中的其余数据 我应该使用内部/外部/完全连接吗Oracle内部/外部/完全联接,oracle,join,inner-join,outer-join,Oracle,Join,Inner Join,Outer Join,我有两张桌子。表一和表二 在表1中,我有两列table1.userid和table2.full_name,在表2中,我有两列table2.userid和table2.ssn 我想要用户ID同时出现在表1和表2中的记录 如果在表2中存在用户ID在表1中的记录,则应忽略这些记录。如果不存在,则还需要表1中的数据。还需要表2中的其余数据 我应该使用内部/外部/完全连接吗 您能帮我做同样的事情吗。如果您想要两个表中都存在的用户IDs,那么请使用内部联接: select . . . from table1
您能帮我做同样的事情吗。如果您想要两个表中都存在的
用户ID
s,那么请使用内部联接
:
select . . .
from table1 t1 inner join
table2 t2
on t1.userid = t2.userid;
select . . .
from table1 t1 left outer join
table2 t2
on t1.userid = t2.userid;
select . . .
from table1 t1 full outer join
table2 t2
on t1.userid = t2.userid;
如果您想要表1
中的所有用户ID
,请使用左侧外部联接
:
select . . .
from table1 t1 inner join
table2 t2
on t1.userid = t2.userid;
select . . .
from table1 t1 left outer join
table2 t2
on t1.userid = t2.userid;
select . . .
from table1 t1 full outer join
table2 t2
on t1.userid = t2.userid;
如果您想要两个表中的所有用户标识
s,则使用完全外部联接
:
select . . .
from table1 t1 inner join
table2 t2
on t1.userid = t2.userid;
select . . .
from table1 t1 left outer join
table2 t2
on t1.userid = t2.userid;
select . . .
from table1 t1 full outer join
table2 t2
on t1.userid = t2.userid;
如果希望两个表中都有
userid
s,请使用internaljoin
:
select . . .
from table1 t1 inner join
table2 t2
on t1.userid = t2.userid;
select . . .
from table1 t1 left outer join
table2 t2
on t1.userid = t2.userid;
select . . .
from table1 t1 full outer join
table2 t2
on t1.userid = t2.userid;
如果您想要表1
中的所有用户ID
,请使用左侧外部联接
:
select . . .
from table1 t1 inner join
table2 t2
on t1.userid = t2.userid;
select . . .
from table1 t1 left outer join
table2 t2
on t1.userid = t2.userid;
select . . .
from table1 t1 full outer join
table2 t2
on t1.userid = t2.userid;
如果您想要两个表中的所有用户标识
s,则使用完全外部联接
:
select . . .
from table1 t1 inner join
table2 t2
on t1.userid = t2.userid;
select . . .
from table1 t1 left outer join
table2 t2
on t1.userid = t2.userid;
select . . .
from table1 t1 full outer join
table2 t2
on t1.userid = t2.userid;
表1的值为1 |约翰| 11、2 |克里斯蒂娜| 22、3 |哈维| 1111、4 |彼得| 666,表2的值为3 | 33、4 | 44。在这两个表中,都有3个和4个以上的用户ID。如果它们很常见,我想从表2而不是表1中获取它们。表1和表2中剩余的用户ID也应该出现在我的select查询中。所以最终结果应该是1 |约翰| 111,2 |克里斯汀| 22,3 |哈维| 33,4 |彼得| 44。@user1251973。删除这个问题或修改它,使用样本数据和您想要的结果。我有表1,值为1 | john | 11,2 | christine | 22,3 | xavi | 1111,4 | peter | 666,表2,值为3 | 33,4 | 44。在这两个表中,都有3个和4个以上的用户ID。如果它们很常见,我想从表2而不是表1中获取它们。表1和表2中剩余的用户ID也应该出现在我的select查询中。所以最终结果应该是1 |约翰| 111,2 |克里斯汀| 22,3 |哈维| 33,4 |彼得| 44。@user1251973。删除此问题或使用示例数据和所需结果对其进行修改。