2011-10-31 78 views
0

嗨,那里我不知道是否有人可以帮助,我有一个完整的心理障碍。Mutliple MySQL嵌套选择

我有这个选择的声明,完美的作品,但我现在想检查结果(名字和姓氏)对另一个表来找出更多关于他们的细节。我不能为我的生活想象如何做到这一点。

SELECT `FirstName` , `Surname` , MobilePhone 
FROM users 
WHERE NOT 
EXISTS (

SELECT PhoneNumber 
FROM Orangedata 
WHERE users.MobilePhone = orangedata.`PhoneNumber` 
) 

此选择返回我想要运行另一个选择的记录列表(名称和手机)。

结果看起来像

FirstName Surname Mobile 

我想运行我的下一个选择,说

Select * 
from Table 3 
WHERE FirstName = FirstName from previous select AND WHERE Surname = Surname from previous select. 

我找总的结果是

给我所有的细节(从表3)对于在表中没有任何记录的用户Orangedata

It有效的三个嵌套选择(我认为),我只是无法弄清楚它

任何帮助,将不胜感激。

回答

0
SELECT table3.* FROM  
     table3 
     JOIN 
     (SELECT `FirstName` , `Surname` , MobilePhone 
     FROM users 
     WHERE NOT 
     EXISTS (
      SELECT PhoneNumber 
      FROM Orangedata 
      WHERE users.MobilePhone = orangedata.`PhoneNumber` 
    )) as b 
ON (table3.FirstName = b.FirstName AND table3.Surname = b.Surname)) 

或者像这样