• DECLARE @CategoryIDString nvarchar(MAX)

    DECLARE @ParameterIDString nvarchar2000)

    set @ParameterIDString ='90001,90004,90005,90006,90007,90008,90009,90010,90011,90012,90013,90014,90015,90016,90017,90018,90019,90020,90021,90022,90023,90024,90025,90026,90027,90028,90029,90030,90031,90032,90033,90034,90035,90036,90037,90038,90039,90040,90041,90042,90043,90044,90045,90046,90047,90048,90049,90050,90051,90052,90053,90054,90055,90056,90057,90058,90059,90060,90061,90062'

    --FORCREATING CATEGORY STRING---------------------

    SET @strquery='DECLARE CATEGORYIDCURSOR CURSOR FOR '

    SET @strquery=@strquery+ 'SELECT categoryid FROM parameter WHERE parameterid in('+@ParameterIDString+')'

    execute sp_executesql @strquery

    SET @CategoryIDString=''

    OPEN CATEGORYIDCURSOR

    FETCH NEXT FROM CATEGORYIDCURSOR INTO @columnName

    WHILE @@FETCH_STATUS=0

    BEGIN

    SET @CategoryIDString= CONVERT(nvarchar(max),(CONVERT(nvarchar(max),@CategoryIDString)+ convert(nvarchar(max),'SELECT [NAME] FROM category where categoryid=')+convert(nvarchar(max),@columnName) +convert(nvarchar(max),' UNION ALL ')))

    FETCH NEXT FROM CATEGORYIDCURSOR INTO @columnName

    END

    CLOSE CATEGORYIDCURSOR

    DEALLOCATE CATEGORYIDCURSOR

    SET @CategoryIDString=convert(nvarchar(max),(LEFT(convert(nvarchar(max),@CategoryIDString),DataLength(@CategoryIDString)-9)))

    --------------------------------------------------