2014-03-03 78 views
0

是否可以引用select語句的結果以在相同查詢中返回結果? 我有一個包含以下字段在select子句中使用

名稱爲N ID, 名, 電子郵件兩個表

關係式R ID, 維吾爾, target_id

我想列出原始ID和target_id的聯繫方式(儘管n.id = r.id是主鍵)。我在想像

Select 
n.id as 'Seller_ID', 
n.name as 'Seller_name', 
n.email as 'Seller_Email', 
r.realtion, 
r.target_id as 'Buyer_ID', 
      (select n.name as 'Buyer_name', 
        n.email as 'Buyer_email; 

      from name n 
       inner join relationship r on n.id =r.target_id) 

from name n 
     inner join relationship r on n.id = r.id 

where n.id = 'ABC123' 

我知道這是不正確的,但已經尋找解決方案,並相信我只是沒有使用正確的術語。

回答

0
Select 
n.id as 'Seller_ID', 
n.name as 'Seller_name', 
n.email as 'Seller_Email', 
r.relation, 
t.id as 'Buyer_ID', 
t.name as 'Buyer_name', 
t.email as 'Buyer_email' 
from `name` AS n 
     inner join relationship r on n.id = r.id 
     inner join name t on r.target_id = t.id 
where n.id = 'ABC123' 
+0

感謝Lewyx,但是這是給'買方'和'賣方'相同的名稱和電子郵件。我以某種方式查詢提供的target_id,然後用它來搜索名稱表的信息'買家' – user3372139

+0

被承認,在代碼中有一些拼寫錯誤,但一旦以明顯的方式糾正(就像我現在使用答案),它爲買方和賣方提供了正確的值:http://sqlfiddle.com/#!2/c2e6b/3/0如果嘗試後仍然遇到問題,那麼您的數據可能有錯誤,因爲在最常見的情況是_this_是正確的路徑(而不是雙重查詢代碼 –

+0

非常感謝,現在正在工作 – user3372139