A volte succede di dover fare delle operazioni particolari sulle date ad esempio, si rende necessario recuperare in fare di esecuzione di una stored procedure parti di una data. Nell'esempio sottostante che diperse non ha molto senso potrebbe essere utilizzato insieme ad altre procedure presentate in questa sezione per comporre delle date relativi a periodo precedenti a quello di esecuzione.
CREATE PROCEDURE sp_GetPreviousMonth(@MYMONTH CHAR(2), @MONTH CHAR(2) OUTPUT) as
IF (@MYMONTH = '')
BEGIN
SET @MONTH = CONVERT(CHAR(2),
MONTH(CONVERT(SMALLDATETIME ,DATEADD(MM,-1,GETDATE()),112)))
IF (@MONTH<10)
SET @MONTH = '0' + @MONTH
END
ELSE
BEGIN
SET @MONTH = CONVERT(CHAR(2),
MONTH(CONVERT(DATETIME,DATEADD(DD,-1,CONVERT(VARCHAR(4),YEAR(GETDATE())) +
RIGHT('00'+@MYMONTH,2)+ '01'),112)))
IF (@MONTH<10)
SET @MONTH = '0' + @MONTH
END