Как конвертировать большой десятичный в VARCHAR в SQL Server? - PullRequest
0 голосов
/ 28 декабря 2018

Допустим, у меня есть таблица с именем Users , как указано ниже:

SomeNumber       FName    LName  
``````````       `````    ``````  
1.2345678e+014   John     Doe  
2.2345678e+014   Tony     Stark  

Как преобразовать столбец SomeNumber в значение varchar?Как нет e + 014 должен отображаться в столбце.Фактические значения столбца SomeNumber: 123456789JD и 234567890TS

Я пробовал следующее, но ни одно из них не сработало.

CONVERT(varchar, [SomeNumber])
CAST([SomeNumber] as varchar)
Try_Parse([SomeNumber] as varchar)

Ожидаемый вывод должен быть в следующем формате:

SomeNumber      FName    LName  
``````````      `````    ``````  
123456789JD     John     Doe  
234567890TS     Tony     Stark    

PS: SomeNumber столбец имеет тип nvarchar (255)

1 Ответ

0 голосов
/ 28 декабря 2018

Вы можете попробовать это:

Извините за мой первый ответ. Я плохо прочитал ваш запрос.

DECLARE @id varchar(max) = '1.2345678e+014' 
select CAST(@id as float) 

Результат: 123456780000000

Другое добавить:

DECLARE @id varchar(max) = '1.2345678e+014' 
select CAST(CAST(CAST(@id as float) AS bigint) AS VARCHAR(MAX)) + 'Letters' --Conversion takes place
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...