我有兩個表,我想加入。表1有銷售訂單,但沒有銷售人員的姓名。它只有員工ID。我有table2,它有僱員的名字,employeeID在兩個表之間是共同的。通常,我會使用內部聯接從table2中獲取銷售人員的姓名。問題是,在table2上,每個員工有多個條目。如果他們改變了管理者,或者改變了公司內部的角色,或者也許繼續使用FMLA,它會創建一個新的行。因此,當我加入表格時,由於表格2中存在多個條目,所以會創建重複項目。在我的結果中,銷售會顯示3到4次。當連接表時得到重複
Select
a.state_name
,order_number
,a.employeeID
,b.Sales_Rep_Name
,a.order_date
from
table1 as A
Inner join table2 as B
On a.employeeid = b.employeeID
where
b.monthperiod = 'November' <-- If I remove this one it adds duplicates
有沒有辦法讓這些重複?我嘗試了截然不同,但沒有工作。可能因爲行至少有一列不同。當我在表2中添加上個月要求的where子句時,我能夠消除重複項,但是我處於需要所有月份而不僅僅是一個月的情況。我必須手動更改月份才能獲得全年。
任何幫助,將不勝感激。由於
我認爲第二個表有辦法知道哪一行是最近的爲每一位員工。使用該條件 – Lamak
如果您所追求的是他們的名字......您可以將table2更改爲....'(從table2中選擇不同的employeeID,sales_rep_name)作爲B',但是這假定名稱是常量。問題在於你想要顯示出售時的名稱嗎? :P如果是這樣,你需要在order_date之後來自table2的最短日期;使這個更有趣:P我們需要兩個表的表結構來從中找出它...... – xQbert
這是一個好點的xQbert。我正在追蹤銷售人員的姓名和他的經理。我想在出售時包括經理,所以我需要添加table2的最大日期。我應該把它包含在子查詢中嗎? – user7146708