我一直負責創建需要從另一個表中引入多達10條記錄的視圖。問題是這個表可能有0,5,10或更多的相應記錄。1到許多SQL連接查看連接表可能有0條記錄
這裏是很簡單的設計,只包括什麼是相關
SalesOrderTable OutsideSalesRepTable SalesRepTable
OrderID BranchID SalesRepID
CustID CustID SalesRepName
BranchID SalesRepID
第一個連接需要在BranchID & SalesOrderTable和OutsideSalesRepTable之間的CustID 第二加入需要是OutsideSalesRepTable和SalesRepTable之間的SalesRepID
該視圖需要列出列爲OutsideSalesRep1,OutsideSalesRep2,... OutsideSalesRep10並填寫SalesRepName。我無法控制這個數據庫的設計。我寧願在客戶表中看到10個專用於SalesRepID的字段,而只使用左連接。
如果只有3 OutsideSalesReps exsit爲分公司/客戶比OutsideSalesRep4-10爲空
這是165列/ 35+表視圖我沒能找出的唯一部分。
任何幫助將真誠讚賞。
PS我對TSQL是半新鮮的。只用了大約6個月。
編輯:我鏈接到一個圖像,顯示源數據的樣本來協助(我希望)解釋我在找什麼。 數據透視表需要顯示
SONum OutsideRep1 OutsideRep2 OutsideRep3 ..... Outside Rep10
5819 59 69 70 null null
5821 59 70 null null null
http://www.bayernsupport.com/SQL.png
你需要一個[支點查詢](HTTP://的TechNet 。microsoft.com/en-us/library/ms177410%28v=sql.105%29.aspx),因爲您試圖將salesrep表中的單個列轉換爲查詢結果中的多個列。 –
所以我嘗試了這種方法幾種不同的方式,這可能是我的無知,但我不能以我需要的方式得到一個查詢樞軸。 我可以得到它樞軸如果我指定SalesRepName或ID在樞軸的「IN」子句中,但我不會知道這些值是什麼。 –