• If the above assumptions are right, then you can do this:

    ;with sd(v)

    as (select '10.0.1600.22'

    union select '233.38550.10.23423.2'

    union select '2353.345.4543'

    union select '456433')

    SELECT v, LEFT(v, ISNULL(NULLIF(p,-1),LEN(v)))

    FROM sd

    CROSS APPLY (SELECT CHARINDEX('.',v,CHARINDEX('.',v,CHARINDEX('.',v)+1)+1) - 1 p) f

    _____________________________________________
    "The only true wisdom is in knowing you know nothing"
    "O skol'ko nam otkrytiy chudnyh prevnosit microsofta duh!":-D
    (So many miracle inventions provided by MS to us...)

    How to post your question to get the best and quick help[/url]