На SQL сервере с плохой поддержкой регулярных выражений вы можете использовать строковые функции следующим образом:
right(val, charindex('.', reverse(val)) - 1)
Идея состоит в том, чтобы получить позицию последней точки в строке, считая от конец строки, затем извлеките соответствующую часть строки с помощью right()
.
Демонстрация на DB Fiddle :
select val, right(val, charindex('.', reverse(val)) - 1) new_val
from (values('20.6.4.4200'), ('10.28.30.2678'), ('22.8.34.1200')) t(val)
GO
val | new_val
:------------ | :------
20.6.4.4200 | 4200
10.28.30.2678 | 2678
22.8.34.1200 | 1200