Я пытаюсь разделить значения на единицы, тысячи, миллионы и миллиарды в SQL Server.Значения могут быть отрицательными и положительными, и для значения не установлено количество символов / цифр.Я дошел до этой точки: ![enter image description here](https://i.stack.imgur.com/SZbuJ.jpg)
Так вот мой код:
UPDATE table
SET Units = RIGHT(CONVERT(VARCHAR(50),[Value]), 3)
UPDATE table
SET Thousands = Right(CONVERT(VARCHAR(50),[Value]), 6)
UPDATE table
SET Thousands = SUBSTRING(CONVERT(VARCHAR(50),Thousands), 1, 3)
Но здесь я сталкиваюсь с проблемой, как будто у меня есть номер '1 019 242 ', для Units это работает -> 242, но для тысяч я сначала хочу получить 6 цифр справа: 019242, а затем подстроку первые 3 цифры, но 0 исчезает, поэтому вместо 19 я получаю 192...
Также я не знаю, как это сделать для миллиардов, так как числа могут различаться по размеру, поэтому это может быть '19 105' или '37 594 820 583 '...
Кстати, так я и придумал, но, может быть, есть что-то проще сделать!
Заранее спасибо за помощь!
Мне удалось (СПАСИБО ЗА КОММЕНТАРИИ !, спасибо) добраться до пункта: ![enter image description here](https://i.stack.imgur.com/9JUP9.jpg)
Теперь я пытаюсь сохранить результаты в моей колонке «Тысячи».Не знаю, как это сделать, я ищу это ..
Еще раз спасибо за вашу помощь!