我有一個人和一個客戶端類型表(通過稱爲客戶端類型細節的第三個錶鏈接)這些人鏈接到的表。客戶類型可以是「朋友」,「敵人」,「外星人」或「怪物」。有些人可以有不止一個,有些人沒有。SQL查詢輸出所有結果,但只有一個特定值從列表中沒有重複
我真正想要得到的是一個輸出一樣的東西:
ID | Name | Friend | Enemy | Alien | Monster |
35 | John | Friend | -blank- | -blank- | Monster |
42 | Eric | -blank- | -blank- | -blank- | -blank- |
因此,約翰既是一個朋友和一個怪物,而埃裏克沒有任何。隨着我嘗試創建的查詢(只是在第一個時刻爲朋友列)我爲每個人都獲得一個行,但對於那些朋友,我得到了2行 - 一個說他們是朋友和一個要說NULL
這是否有任何意義?下面
查詢:
SELECT DISTINCT
cl.ClientID,
cl.dcFirstName,
(SELECT Dwh.DimClientTypes.dctName
WHERE (Dwh.DimClientTypes.dctGuid IN ('52CD80A6-D4D7-4FD3-8AE8-644A40FEC108'))
) AS Friend
FROM Dwh.DimClientTypeDetails
LEFT OUTER JOIN Dwh.DimClientTypes ON Dwh.DimClientTypeDetails.dctdTypeGuid = Dwh.DimClientTypes.dctGuid
LEFT OUTER JOIN Dwh.DimClients AS cl ON Dwh.DimClientTypeDetails.dctdClientGuid = cl.dcClientGUID
我真的不知道接近它的所以任何幫助/建議將非常感激收到的最好的方式。
感謝 李
你的子查詢有沒有' FROM'子句。這沒有意義。 –