your convert is at the wrong place...and also you have defined @First_Day as a datetime field instead of a varchar field...maybe this??Declare @Last_Day varchar (8)Declare @dd intset @dd = DATEPART(dd,Convert(Varchar(8),Getdate(),112)) -1Print @ddDeclare @First_Day varchar(8)SET @First_Day = convert(varchar(8),DateADD(DAY, -@dd , getdate()),112)SET @First_Day = convert(varchar(8),DateADD(MONTH, -1, @First_Day),112)Print @First_Dayselect @Last_Day = convert(varchar(8),dateadd(month, datediff(month, 0, getdate()), 0) -1,112)Print @Last_Day