2016-12-02 46 views
-2
Select 
     b.subCusNo, c.companyName as [Subsidiary], b.equityInterest,b.relation 
    From 
     cusparentsub b, customerdetails c 
    Where 
     b.subcusNo = c.custNo 

    Select 
     b.parentCusNo,c.companyName as [Parent Company], b.equityInterest, b.relation 
    From 
     cusparentsub b, customerdetails c 
    Where 
     b.parentcusNo = c.custNo 

以上是兩條SQL語句。是否有可能加入select語句,輸出將在subcusno, companyname, parentcusno, companyname, equityinterest和關係數據表中?如何結合兩個選擇SQL語句?

我希望companyname列出現在subcusno列之後和parentcusno之後。兩個公司名稱數據都來自同一個表。這可能嗎?

謝謝

+0

您可以使用一個聯合聲明 –

+0

我試過了,沒有顯示任何數據。 – mir

+0

唉,那醜陋的過時的A,B加入語法:( –

回答

1

您可能想要使用更新的JOIN語法。我用左加入父,而是取決於你真正想要的,你可以使用INNER JOIN

SELECT b.subCusNo, 
     c.companyName, 
     b.parentCusNo, 
     pc.companyName AS [Parent Company], 
     b.equityInterest, 
     b.relation 
FROM cusparentsub b 
JOIN customerdetails c ON b.subcusNo = c.custNo 
LEFT JOIN customerdetails pc ON b.parentCusNo=pc.subCusNo 
+0

謝謝你回答:),但它沒有奏效。 :( – mir

+0

- 在最後一行* pc.subcusNo更改爲pc.custNo,它的工作完美。非常感謝你:) – mir

+0

@mir「沒有工作」不是一個錯誤消息。詳細說明什麼是正確的結果,以及由此查詢提供的結果有什麼問題。 –

0
SELECT b.subCusNo, b.parentCusNo,c.companyName as [Subsidiary], 
b.equityInterest,b.relation 
FROM cusparentsub b 
JOIN customerdetails c ON b.subcusNo = c.custNo 
JOIN customerdetails d ON b.parentcusNo = d.custNo 
+0

謝謝你回答:)但它沒有工作。 – mir

+0

@mir「沒有工作」不是錯誤消息。詳細說明什麼是正確的結果,以及由此查詢提供的結果有什麼問題。 –

+0

我已經得到正確的查詢。對於這個查詢,它只顯示一列公司名稱,而我需要兩列公司名稱。該查詢正在工作,但它沒有顯示我需要的結果 – mir

0
SELECT cd.custNo, --What you want to see 
,ISNULL(c1.subcusNo,c2.parentcusNo) AS Matched_Customer_No 
FROM customerdetails cd 
    LEFT JOIN cusparentsub c1 
     ON c1.subcusNo = cd.custNo 
    LEFT JOIN cusparentsub c2 
     ON c2.parentcusNo = cd.custNo 
+0

謝謝你回答:),但它沒有工作。 – mir

+0

@mir「不起作用」不是錯誤消息。詳細說明什麼是正確的結果,以及由此查詢提供的結果有什麼問題。 –

+0

我已經得到正確的查詢。對於此查詢,它將來自subcusno和parentcusno的數據組合在一起。我需要他們在單獨的專欄。該查詢正在工作,但沒有顯示我需要的結果 – mir