我有一個SQL Server數據庫,我想要一個主表中包含ID和連接的列的主表?他們與其他3個表中的ID匹配實際名稱。SQL根據多個表中的數據創建查詢
例
表=卡瓦看起來像這樣:
ID | UserID | ClientID | TimeID
---------------------------------
10 | 35 | 48 | 27
我已其他3個表稱爲Usernames, Clientnames, Timeactnames
這些表中的每一個看起來像這樣:
用戶名
ID | Nickname1 |
----------------
35 | Shawn |
個
Clientnames
ID | Nickname1 |
----------------
48 | Roger |
Timeactnames
ID | Nickname1 |
----------------
27 | Filing |
我想有一個新的查詢結果,顯示票據表的結果是這樣的:
ID | UserID | ClientID | TimeID
---------------------------------
10 | Shawn | Roger | Filing
這可能嗎?
我試圖連接與聯合,但我從來沒有得到這一結果我得到的結果的一些大規模的巨大的表組合:
SELECT tsslips.*, ClientData.*, UserData.*, TimeActData.* FROM slips JOIN ClientData ON ClientData.ID = slips.ClientID JOIN TSUserData ON UserData.ID = slips.UserID JOIN TimeActData ON TimeActData.ID = slips.TimeActID
所有我得到的是一個非常巨大的長表把所有的信息,但不是像我想要的新合併表。
然後我嘗試這樣做:
SELECT * FROM (SELECT UserID, ClientID, TimeActID FROM Slips UNION ALL SELECT Nickname1 FROM ClientData UNION ALL SELECT Nickname1 FROM UserData UNION ALL SELECT Nickname1 FROM TimeActData) all_tables WHERE all_tables.ClientID = 'something'
但我不認爲我格式化或正確使用那一個,因爲我得到一個錯誤,說:
消息205,級別16,狀態1,第1行使用UNION,INTERSECT或EXCEPT運算符組合的所有查詢在目標列表中必須具有相同數量的表達式。
我試圖讓查詢結果,這樣我可以使用右鍵另存爲SQL Server 2008中
這工作得很好,但有可能讓滑動表上的列數據的其餘部分?現在新的最終結果查詢顯示了我們要求它加入的確切數據,但是我希望我們還沒有加入其他字段。例如,有一個標籤爲「Description」的列花費的時間|日期| 除了加入的數據字段之外,我還想要這些字段。非常感謝你的幫助! – Shawn
只需在選擇列表中包括這些字段:s.Description,s.Timespent等 –
完美,非常感謝Joel! – Shawn