Oracle实现多表左连接(oracle左连接多个表)

随着Oracle数据库的发展,多表之间的连接更加容易,Oracle实现多表左连接也变得很容易。多表左连接就是把多个表连接起来,并只保留左侧表(如表A)窗口中的所有行,而右表(如表B)窗口中具有相匹配的行,如果没有则为null。

下面就用一个简单的实例来说明Oracle实现多表左连接。假设有两张表:表A和表B,表A有两个字段:id,name,表B有三个字段:id,age,address,表A和表B使用id作为连接字段,他们的内容如下:

|表 A | |表 B |

|—–|—-|——-|

|id | name|id |

|1 |John |1 |

|2 |Bob |2 |

|3 |Aime |3 |

| | |4 |

| | |Address|

现在以表A为主表,做一次多表左连接的SQL语句如下:

SELECT a.id,a.name,b.age,b.address
FROM
a
LEFT JOIN
b
ON a.id=b.id;

多表左连接的结果如下:

|id | name | age | address |

|—-|——-|—–|————-|

|1 |John |20 |NewYork |

|2 |Bob |21 |Washington |

|3 |Aime |22 |California |

|4 | |null | |

从结果可以看出,表A窗口中的所有行都出现在结果集中,右侧表B中没有与之匹配的行对应项显示为null,最后一项就没有在表B中找到,只显示null。

Oracle实现多表左连接,通过使用LEFT JOIN语句轻松完成,从上面的实例中可以清楚的看到,多表左连接的结果集总是会保留左表中的结果,并且为右表中没有匹配的行显示为null,从而能够完成两个表之间的相关信息的检索。


数据运维技术 » Oracle实现多表左连接(oracle左连接多个表)