2014-11-06 56 views
0

我試圖將下面的行合併到一個報告的記錄中。我正在尋找[貸款官員]和[房地產經紀人]的名字在一行上顯示。任何幫助,將不勝感激。將2個sql表格行合併爲一個

這裏是我現在所在

SELECT DISTINCT z.State 
     ,z.County 
     ,z.City 
     ,cr.ZipCode 
     ,cr.Route 
     ,UPPER(c1.LastName) + ', ' + UPPER(c1.FirstName) AS 'Loan Officer' 
     ,UPPER(c2.LastName) + ', ' + UPPER(c2.FirstName) AS 'Realtor' 
     ,cr.ID 
FROM Prospecting.ZipCodeCarrierRoute cr WITH (NOLOCK) 
     INNER JOIN ZIPCodes z WITH (NOLOCK) 
       ON z.ZipCode = cr.ZipCode 
     LEFT JOIN Prospecting.Contact_CarrierCode_Assignments cca WITH (NOLOCK) 
       ON cca.ZipCodeCarrierRouteID = cr.ID 
     LEFT JOIN Prospecting.Contact c1 WITH (NOLOCK) 
       ON c1.ContactID = cca.ContactID 
        AND c1.ContactTypeID = 1 
     LEFT JOIN Prospecting.Contact c2 WITH (NOLOCK) 
       ON c2.ContactID = cca.ContactID 
        AND c2.ContactTypeID = 2 
WHERE cr.ID = 875 

這是結果 enter image description here

這是我的尋找 enter image description here

+0

GROUP BY'cr.ID' – DanR 2014-11-06 22:55:14

回答

3

你可以很容易與group by做到這一點:

SELECT z.State, z.County, z.City, cr.ZipCode, cr.Route, 
     MAX(UPPER(c1.LastName) + ', ' + UPPER(c1.FirstName)) AS [Loan Officer], 
     MAX(UPPER(c2.LastName) + ', ' + UPPER(c2.FirstName)) AS [Realtor], 
     cr.ID 
FROM Prospecting.ZipCodeCarrierRoute cr WITH (NOLOCK) 
     INNER JOIN ZIPCodes z WITH (NOLOCK) 
       ON z.ZipCode = cr.ZipCode 
     LEFT JOIN Prospecting.Contact_CarrierCode_Assignments cca WITH (NOLOCK) 
       ON cca.ZipCodeCarrierRouteID = cr.ID 
     LEFT JOIN Prospecting.Contact c1 WITH (NOLOCK) 
       ON c1.ContactID = cca.ContactID 
        AND c1.ContactTypeID = 1 
     LEFT JOIN Prospecting.Contact c2 WITH (NOLOCK) 
       ON c2.ContactID = cca.ContactID 
        AND c2.ContactTypeID = 2 
WHERE cr.ID = 875 
GROUP z.State, z.County, z.City, cr.ZipCode, cr.Route, cr.ID 
+0

傑出的戈登。我看到你名字上的MAX。很好的接觸,我正在朝那條路走,但是名字上出現錯誤。不知道如何解決這個問題。 – Tim 2014-11-06 23:06:14