我有一個Code_Master表,其中有3000多個代碼。這些代碼被嵌入到我所有的表格中,但作爲不同的列名...如何根據同一列顯示來自Code_Master表的多個代碼
例如:我有一張名爲Notes的表格,其中包含所有學生帳戶的傳入呼叫記錄(所有學生帳戶信息保存在表中:CA_Prof )。我在這個表中有3列顯示來自Code_Master表的代碼。我有一個Note_Category列(代碼1-5),一個Caller_Mood列(代碼6-10)和一個Caller列(代碼11-15)。
在CA_Prof表中,我有一個名爲C_ID(Student Acct#)和CA_Id(Sub Account(這是他們的第一,第二,第三個acct等)的列。我還有一個列S_Id(學校ID號爲學校他們參加)
我希望能夠顯示:
Note_Category,Code_Description(從Code_Master),Caller_Mood,Code_Description(從Code_Master),來電,Code_Description(從Code_Master)
但僅限於記錄Notes記錄中找到的C_ID和CA_ID與CA_Prof中的C_Id和CA_Id匹配
我無法知道如何使用來自同一個Code_Master表的代碼對不同列進行此操作。
以下是我有:
SELECT
can.C_Id,
can.CA_Id,
can.Note_No,
can.Caller_Mood,
cm.Code_Desc,
can.Caller,
can.Note_Category,
can.How_Contacted_Code,
can.Note,
can.Insert_Time,
can.Insert_User
FROM Notes can (NOLOCK)
INNER JOIN CA_Prof cap
ON can.C_Id = cap.C_Id
AND can.CA_Id = cap.CA_Id
Inner Join Code_Mstr cm on can.Caller_Mood=cm.Code_Id
WHERE cap.S_Id = 8027
AND can.Insert_Time >= '05/01/2014'
AND can.Insert_Time <= '01/01/2015'
AND can.How_Contacted_Code = '331'
ORDER BY can.Note_Cat_Code ASC;
這工作很好!謝謝。我沒有意識到我可以用不同的別名多次加入同一張表。我也可以爲不同類型的聯接做到這一點嗎?說內心和左邊? –
是的,你可以。請注意,'inner join'意思就像'join'一樣。順便說一句,如果這個答案解決了你的問題,你可以通過點擊它左邊的刻度標記來將它標記爲「接受」。 – Blorgbeard