获取table2数据是否包含表1的主键

问题描述:

我有两个表COD_CLIENTCLIENT表的主键。 Adress没有主键。获取table2数据是否包含表1的主键

CLIENT

COD_CLIENT | NAME_CLIENT 

ADRESS

COD_CLIENT | CITY | STREET | NUMBER 

我想获得的所有客户端,并且如果ADRESS包含客户端代码,我想选择该行也,所有在一个查询中。

但是,如果没有地址,只需忽略Adress行,但保留Client数据。

我尝试这样做:

SELECT c.*,e.* 
FROM CLIENT c 
RIGHT JOIN ADRESS e (e.COD_CLIENT = c.COD_CLIENT) 

但是,当然,它没有工作。

我该如何获得这些结果?

如果我深知......你只需要改变你的右键加入左连接使SQL检索所有的客户端与他们的地址的客户端表。如果他们没有地址,你会在这些字段中得到NULL。

SO:

SELECT c.*,e.* 
FROM CLIENT c 
LEFT JOIN ADRESS e ON e.COD_CLIENT = c.COD_CLIENT 

REF:http://www.codeproject.com/Articles/33052/Visual-Representation-of-SQL-Joins

+0

甲骨文指向 “缺少关键字” – Phiter

+0

对不起你 “ADRESS E” 之前错过ON。所以“SELECT c。*,e。*从客户端c左连接ADRESS e ON(e.COD_CLIENT = c.COD_CLIENT)” –

+0

是的,它的工作,谢谢:) – Phiter

SELECT c.*,e.* 
FROM CLIENT c 
LEFT JOIN ADRESS e ON e.COD_CLIENT = c.COD_CLIENT