我有一个数据仓库的开始,它包含(以及其他表(
- 日期表,包含200年的日期,因此无需建立一个";动态的";日期表
- dbo。Dim_Items(见下文(
项目编号 | QOH | 生效日期到期日期 | IsCurrentRecord |
---|---|---|---|
372620 | 24 | 2021-12-11 05:34:09.00>td>9999-12-31 00:00:00.0001 | |
372620 | 11 | 2021-12-09 05:34:11.000 | 0 |
372620 | 9 | 2021-12-07 05:34:0.000 | 2021-22-09 05:34:11.000 | 0
DBFIDDLE
DECLARE @START_DATE date,
@END_DATE date
SET @START_DATE = '20211207'
SET @END_DATE = GETDATE() -- '20211213'
SELECT
TheDate,
I.Itemnumber,
I.QOH
FROM dbo.Dim_Calendar CAL
LEFT JOIN dbo.Dim_Items I On CAL.TheDate BETWEEN CAST(I.EffectiveDate as DATE)
AND I.ExpirationDate
AND I.Itemnumber = 372620
WHERE CAL.TheDate >= @START_DATE
AND CAL.TheDate <= @END_DATE
ORDER BY CAL.TheDate,
I.ItemNumber