我相信一個Group By可以解決以下問題,但也許它是Select Distinct。無論哪種方式,我恭敬地轉向你:分組依據多個表
目標:
爲了鞏固協議,然後LaborCode然後安排。我爲一家執行多項服務的公司工作,我想要採取任何日期範圍並指定我們每週執行每項服務的日子。在一個月的時間內,我們會有(4)星期一 - 我想只看到一個星期一。作爲一個側面說明,我已經嘗試過XML Path,但它似乎不起作用。
的代碼:
Select Top 100 Percent Agreements.AgrmntID, JobSites.SiteName,
Customers.CompanyName, LaborCodeTypes.Description As LaborCode, DateName(dw,
AgreementSchedules.SchedDate) as Schedule
From Agreements Inner Join
AgreementSchedules On Agreements.AgrmntID = AgreementSchedules.AgrmntID
Inner Join
Customers On Agreements.CustID = Customers.CustID Inner Join
JobSites On Agreements.CustSiteID = JobSites.CustSiteID Left Outer Join
LaborCodeTypes On AgreementSchedules.RepairID = LaborCodeTypes.RepairID
Where Agreements.Status = 2
的數據(附表從AgreementSchedules.SchedDate衍生) - 選擇2周:
AgrmntID SiteName Company LaborCode Schedule
---------- ---------- ---------- ---------- ----------
1 JOB01 COMP01 Sweeping Monday
1 JOB01 COMP01 Sweeping Wednesday
1 JOB01 COMP01 Sweeping Monday
1 JOB01 COMP01 Sweeping Wednesday
1 JOB01 COMP01 Porter Thursday
1 JOB01 COMP01 Porter Thursday
2 JOB02 COMP02 Landscaping Tuesday
2 JOB02 COMP02 Landscaping Tuesday
所需的輸出:
AgrmntID SiteName Company LaborCode Schedule
---------- ---------- ---------- ---------- ----------
1 JOB01 COMP01 Sweeping Monday
1 JOB01 COMP01 Sweeping Wednesday
1 JOB01 COMP01 Porter Thursday
2 JOB02 COMP02 Landscaping Tuesday
謝謝很多提前。我一直在試圖找出幾天沒有運氣的情況。
謝謝非常!!哇 - 我不敢相信我浪費了多少時間讓這種方式比它需要的更復雜。 –