Oracle DB查询 - 连接两个表

时间:2014-11-17 12:02:08

标签: database oracle join

我正在尝试编写一个oracle数据库查询

表1包含

ID      Name   Action IP Address
11345   James  Copy   10.1.1.1
11345   James  Create 10.1.1.1
34512   Alex   Delete 10.1.1.2

表2包含

ID     UserID  Name   IP Address
11345  jusb    James  10.1.1.1
34512  awaters Alex   10.1.1.2

期望的输出

ID      UserID  Name   Action   IP Address
11345   jusb    James  Copy     10.1.1.1
11345   jusb    James  Create   10.1.1.1
34512   awaters Alex   Delete   10.1.1.2

ID在第二个表中是唯一的,但在第一个表中重复。我基本上想要将UserID字段添加到表1中的每个条目。

这是我到目前为止所尝试的

select t1.ID, t1.Name, t1.Action, t2.UserID, t1.IPAddress from Table1 t1 
left outer join Table2 t2 on t1.ID =t2.ID

提前致谢。

1 个答案:

答案 0 :(得分:0)

1-在这种情况下使用内部联接会更好,因为表1中的每条记录在表2中都有一个id。 2-在左外连接情况下,您也可以获得结果,表1中的记录表2中不存在。

最终查询是这样的:

select t1.ID, t2.UserID, t1.Name, t1.Action, t1.IPAddress from Table1 t1 
inner join Table2 t2 on t1.ID =t2.ID