如何查询多个非相关表?

时间:2014-02-08 14:13:52

标签: mysql sql select inner-join

基本上我有三个表,我想从所有3个表中选择属性。

SELECT Users.Name, Sales.SaleID, Return.ReturnAmount
FROM Users
INNER JOIN Sales ON Users.SaleID = Sales.SaleID

但是,Return与Sales有关系,但与Users无关。

我如何包含returnAmount?

2 个答案:

答案 0 :(得分:1)

既然你说Return与销售有关系应该有效。只需检查您需要加入Return with Sales的列。

 SELECT Users.Name, Sales.SaleID, Return.ReturnAmount
 FROM Users
 INNER JOIN Sales 
   ON Users.SaleID = Sales.SaleID
 INNER JOIN Return
   ON Return.SaleID = Sales.SaleID -- You said Return has relationship with Sales. 

答案 1 :(得分:1)

鉴于这些表名,我能想到的最可能的查询是:

SELECT u.Name, s.SaleID, r.ReturnAmount
FROM Users u INNER JOIN
     Sales s
     ON u.UserID = s.UserID INNER JOIN
     Returns r
     on r.SaleID = s.SaleID;

这是一个非常不寻常的数据布局,SaleID表中有Users