• Bob, thanks for the link.

    Problem with your solution when @count < word count of description then nothing returned here's a fix:

    declare @count int

    set @count = 10000

    DECLARE @temp1 TABLE (ID INT IDENTITY(1,1) PRIMARY KEY CLUSTERED, TextDescription VARCHAR(255))

    INSERT INTO @temp1

    SELECT 'Lorem ipsum dolor sit amet, consectetur adipiscing elit.' UNION ALL

    SELECT 'Nullam a libero et dui tristique malesuada.' UNION ALL

    SELECT 'Donec ultricies sollicitudin magna, eu gravida lectus fringilla ut.' UNION ALL

    SELECT 'Nunc vestibulum elit tincidunt velit pellentesque feugiat.' UNION ALL

    SELECT 'Aliquam eu purus a neque fringilla porta.' UNION ALL

    SELECT 'Fusce pretium justo vitae mauris tempor porttitor tincidunt orci laoreet.'

    ;with tally (N) as

    (select row_number() over(order by (select null)) from master.sys.all_columns)

    select id, max(left(textDescription,N-1)) as sub_string

    from @temp1

    cross apply (select Row_Number() over (order by N) as X, N

    from tally

    where substring(textDescription,N,1) = ' '

    and N <= len(textDescription)

    ) ca

    where ca.X <= @count

    group by id