• Conficker (4/2/2012)


    DECLARE @Day INT

    SET @Day = datePart(dd,getDate())

    DECLARE @i INT

    SET @i = 0

    CREATE TABLE #temp1

    (para VARCHAR(50))

    WHILE (@i<20)

    BEGIN

    IF @DAY < 21

    BEGIN

    INSERT INTO #temp1

    SELECTCONVERT(VARCHAR(25),((dateAdd(mm,-(@i+0),getDate() ) - datePart(d,getDate()))+21),103)+

    ' - '+

    CONVERT(VARCHAR(25),((dateAdd(mm,-(@i+1),getDate() ) - datePart(d,getDate()))+20),103)

    END

    ELSE

    BEGIN

    INSERT INTO #temp1

    SELECTCONVERT(VARCHAR(25),((dateAdd(mm,-(@i+1),getDate() ) - datePart(d,getDate()))+21),103)+

    ' - '+

    CONVERT(VARCHAR(25),((dateAdd(mm,-(@i+2),getDate() ) - datePart(d,getDate()))+20),103)

    END

    SET @i = @i+1

    END

    SELECT * FROM #temp1

    DROP TABLE #temp1

    here we go ...!:)

    Why use a while loop? You will find the code I provided just as efficient and much more scalable.