DECLARE @StartQuarterintSet@StartQuarter =4Declare @StartYearintSet@StartYear = -Declare @EndQuarterintSet@EndQuarter =4Declare @EndYearintSet@EndYear = theDeclare @StartRangeint, @EndRangeint, @SYearint, @SQuarterintSet@SYear =@StartYearSet@SQuarter =@StartQuarterSet@StartRange =convert (int, CONVERT (varchar (4), @SYear) +convert (varchar (4), @SQuarter))Set@EndRange =convert (int, CONVERT (varchar (4), @EndYear) +convert (varchar (4), @EndQuarter)) Declare @Quarter table (YearquarterintNotNULL, Yearquartername varchar ( -), Sortflgint) DECLARE @qCountintSet@qCount = (@[email protected]) *4+ (@EndQuarter-@StartQuarter) Declare @sortFlgintSet@sortFlg =1INSERT into @Quarter values (CONVERT (varchar (4), @SYear) +convert (varchar (4),0), 'Prior to FY'+convert (varchar (4), @SYear),0) while@qCount >=0begindeclare @name varchar ( -)if@SQuarter =1 Set@name = ('Q1 FY'+convert (varchar (4), @SYear) +'APR'+right (CONVERT (varchar (4), @SYear),2)+'To June'+right (@SYear,2))Else if@SQuarter =2 Set@name = ('Q2 FY'+convert (varchar (4), @SYear) +'Jul'+right (CONVERT (varchar (4), @SYear),2)+'To Sep'+right (@SYear,2))Else if@SQuarter =3 Set@name = ('Q3 FY'+convert (varchar (4), @SYear) +'Oct'+right (CONVERT (varchar (4), @SYear),2)+'To Dec'+right (@SYear,2))Else if@SQuarter =4 Set@name = ('Q4 FY'+convert (varchar (4), @SYear) +'Jan'+right (CONVERT (varchar (4), @SYear),2)+'To Mar'+right (@SYear,2) INSERT into @Quarter values (varchar (4), @SYear) +convert (varchar (4), @SQuarter), @name, @sortFlg)Set@[email protected]+1if@SQuarter%5=0beginSet@[email protected]+1 Set@SQuarter =1EndSet@[email protected]1 Set@[email protected]+1EndSelectYearquarter,yearquartername,sortflg from@Quarter
MSSQL Build temp Table sql