我有一個數據集,顯示關聯工作日的貨幣即期匯率,並希望爲每個貨幣的參考日期提前計算10個最新數據點的值。如何在DATEADD()函數中引用2周 - 1天?
數據如下所示:
AsOfDate Currency ExchangeRateUSD
9/11/1997 AED -1
9/11/1997 AUD 1.389178
9/11/1997 CAD 1.39125
9/11/1997 CHF 1.4774
9/11/1997 CZK 33.6755
9/11/1997 DKK 6.8203
9/11/1997 HKD 7.7455
9/11/1997 IDR 2943
9/11/1997 JPY 119.77
9/11/1997 KWD -1
9/11/1997 MXN 7.7855
9/11/1997 NOK 7.36715
9/11/1997 NZD 1.579654
9/11/1997 PHP 32.53
9/11/1997 SEK 7.7944
9/11/1997 SGD 1.511
9/11/1997 THB 35.475
9/11/1997 TWD 28.6125
9/11/1997 ZAR 4.698
9/12/1997 AED -1
9/12/1997 AUD 1.386001
9/12/1997 CAD 1.39325
9/12/1997 CHF 1.46475
9/12/1997 CZK 33.449
9/12/1997 DKK 6.7377
9/12/1997 HKD 7.746
9/12/1997 IDR 2933
9/12/1997 JPY 120.815
9/12/1997 KWD -1
9/12/1997 MXN 7.7765
9/12/1997 NOK 7.2844
9/12/1997 NZD 1.575175
9/12/1997 PHP 32.2
9/12/1997 SEK 7.65845
9/12/1997 SGD 1.514
9/12/1997 THB 36.225
9/12/1997 TWD 28.613
9/12/1997 ZAR 4.6865
9/15/1997 AED -1
9/15/1997 AUD 1.387829
9/15/1997 CAD 1.39185
9/15/1997 CHF 1.45175
隨着1999年2月19日的基準日期,我想返回下面的數據(例如僅顯示了兩種貨幣,實際返回的數據將包括所有的貨幣):
AsOfDate Currency ExchangeRateUSD
2/8/1999 EUR 0.888968
2/9/1999 EUR 0.884956
2/10/1999 EUR 0.883275
2/11/1999 EUR 0.885152
2/12/1999 EUR 0.886682
2/15/1999 EUR 0.889957
2/16/1999 EUR 0.894454
2/17/1999 EUR 0.890234
2/18/1999 EUR 0.891107
2/19/1999 EUR 0.901266
2/8/1999 JPY 113.71
2/9/1999 JPY 114.38
2/10/1999 JPY 114.52
2/11/1999 JPY 114.3
2/12/1999 JPY 114.305
2/15/1999 JPY 115.525
2/16/1999 JPY 118.175
2/17/1999 JPY 118.895
2/18/1999 JPY 119.82
2/19/1999 JPY 120.53
對於1999年2月25日的基準日期,我想再次返回以下數據(實際數據將顯示所有貨幣):
AsOfDate Currency ExchangeRateUSD
2/12/1999 EUR 0.886682
2/15/1999 EUR 0.889957
2/16/1999 EUR 0.894454
2/17/1999 EUR 0.890234
2/18/1999 EUR 0.891107
2/19/1999 EUR 0.901266
2/22/1999 EUR 0.906454
2/23/1999 EUR 0.910705
2/24/1999 EUR 0.91295
2/25/1999 EUR 0.904895
2/12/1999 JPY 114.305
2/15/1999 JPY 115.525
2/16/1999 JPY 118.175
2/17/1999 JPY 118.895
2/18/1999 JPY 119.82
2/19/1999 JPY 120.53
2/22/1999 JPY 120.33
2/23/1999 JPY 121.195
2/24/1999 JPY 121.88
2/25/1999 JPY 120.1
正如您所看到的,開始日期和結束日期之間的天數將根據參考日期而有所不同,因此我無法在DATEADD()內使用DATEPART日。儘管如此,使用化合物2周到1天會使我獲得適當的範圍。
有沒有辦法在DATEADD()或其他方式使用複合DATEPART?
編輯 - 我錯過了一個關鍵點...我想這樣做多個貨幣與多個參考日期同時。我有一個引用日期表(#referenceDates),我將加入匯率表(#exchangeRates),並且我想在WHERE子句中使用BETWEEN來爲每個引用日期提取適當的日期,因此在DATEADD()中需要複合DATEPART。
您試圖獲得給定日期的10條最近記錄? – Justin