0
好的,所以我正在做一個軟件工具來提醒即將到期的CRB。到期時間間隔由程序的用戶決定。用SQL中的int值確定DATEPART
我目前正在使用SQL Server 2008.因此,我正在嘗試執行一條SQL語句,它將檢索超出此有效期限的所有記錄。下面是我想達到的理念:
Declare @ExpiryType as int -- (0=Days,1=Weeks,2=Months,3=Years)
Declare @ExpiryValue as int -- Interval of expiry
Declare @DateOfIssue as date -- Date of last CRB check
SELECT * FROM tblDBS_Details
WHERE DATEADD(@ExpiryType, @ExpiryValue, @DateOfIssue) <= GETDATE()
正如你所看到的,表保存期滿間隔類型(天,周,月,年),區間值,和日期中,我需要添加間隔。
我在DATEADD函數的第一個參數中收到一個錯誤,因爲它期望一個DATEPART而不是一個整數。有沒有辦法根據存儲的整數來確定使用哪個DATEPART?還是有另一種方法來做到這一點?
那是足夠的幫助,不勝感激! – Weebie 2013-03-11 08:53:04