我有一個數據集(DATASET1),列出所有員工的部門ID,他們開始的日期和他們被終止的日期。SQL - 建立一個包含日曆日粒度的事實表
我希望我的查詢返回一個數據集,其中每一行代表每個員工留任的日期,以及工作天數(從開始到最新)。
我該如何查詢?感謝您的幫助,提前。
dataSet1的
DeptID EmployeeID StartDate EndDate
--------------------------------------------
001 123 20100101 20120101
001 124 20100505 20130101
DATASET2
DeptID EmployeeID Date #ofDaysWorked
--------------------------------------------
001 123 20100101 1
001 123 20100102 2
001 123 20100103 3
001 123 20100104 4
.... .... ........ ...
EIDT:我的目標是建立這將被用來在SSAS推導措施的事實表。我正在制定的措施是「平均就業時間」。度量將部署在儀表板中,用戶將能夠選擇日曆時間段並深入到月,周和日。這就是爲什麼我需要從這麼大的數據集開始。也許我可以通過使用MDX查詢來完成這個目標,但是如何實現?
這是可能的,但不太可能有用 - 您的最終目標是什麼?我希望有一個更簡單的方法到達那裏。 – Hogan
爲什麼你想要返回所有的數據?如果僱員已經工作了10年,您將返回3652行。你應該在代碼中迭代。 –
「StartDate」和「EndDate」列的數據類型是什麼? 'CHAR/VARCHAR(6)'或'DATE'? DATE'或DATETIME'會更容易與... – Bryan