If datepart(mm, your-date) >7 then cast('31/12/' + cast(datepart(yy, dateadd(yy, 4, your-date)) as char(4)) as datetime)
declare @somedate datetimeset @somedate = '2012-08-01'If datepart(mm, @somedate) >7 select cast('12/31/' + cast(datepart(yy, dateadd(yy, 4, @somedate)) as char(4)) as datetime) else select @somedateset @somedate = '2013-01-01'If datepart(mm, @somedate) >7 select cast('12/31/' + cast(datepart(yy, dateadd(yy, 4, @somedate)) as char(4)) as datetime) else select @somedate
;WITH Dates AS ( SELECT MyDate='2012-11-01' UNION ALL SELECT '2012-04-04')SELECT MyDate ,CASE WHEN DATEPART(month, MyDate) <= 7 THEN DATEADD(year, 4, MyDate) ELSE DATEADD(year, 5+DATEDIFF(year, 0, MyDate), 0)-1 ENDFROM Dates
SELECT ContactId,Effective_Date,Semester,EffectiveGraduationDate= CASE WHEN DATEPART(month, EGD) <= 7 THEN DATEADD(year, 4, EGD) ELSE DATEADD(year, 5+DATEDIFF(year, 0, EGD), 0)-1 END from ED