我有4张桌子,A,B,C,D。
A存储我的客户Id,B,C D存储客户的各种详细信息。例如。B店学历,C店职业,D店兴趣。
现在,客户可能在C、D中没有条目,或者在B和D中有条目,但在C中没有条目。
我想通过连接所有四个表来选择所有信息。Customer_id出现在所有四个表中。内连接显然不会起作用。
我在考虑左外部连接。有没有人能帮我解决这个要求。
发布于 2014-10-06 23:28:55
左外连接将只获取列A:B匹配或B:C匹配的行,如果您想保留表C中某些行的值,在空白中U可以首先与A和B进行左外连接,然后与C和D进行完全外连接,这样,无论C和D中是否有值,您都将能够保留C和D中的所有数据
我是这样想的:
SELECT a.store, b.education, d.storeinterest FROM
(
SELECT * FROM A
LEFT OUTER JOIN B
ON A = B
) A
FULL OUTER JOIN C
ON A = C
FULL OUTER JOIN D
ON A= D发布于 2014-10-06 23:29:26
下面的一些内容应该会让你开始:
SELECT a.*, b.*, c.*, d.*
FROM a LEFT OUTER JOIN b on
a.customer_id = b.customer_id LEFT OUTER JOIN c
on a.customer_id = c.customer_id LEFT OUTER JOIN d
on a.customer_id = d.customer_id https://stackoverflow.com/questions/26219411
复制相似问题