Как мне преобразовать число с плавающей точкой в ​​varchar без потери десятичных разрядов?SQL Server 2012 - PullRequest
0 голосов
/ 28 февраля 2019

SQL Server 2012: преобразование float в varchar приводит к удалению десятичных знаков.

Например:

select convert(varchar, cast(834.7833 as float))

возвращает varchar с 834.783.

Как преобразовать float в varchar без потери десятичных разрядов?

Этот вопрос похож на вопрос без ответа:

Какconvert (varchar, float) решает, сколько десятичных знаков оставить?

1 Ответ

0 голосов
/ 28 февраля 2019

Зачем вам вообще нужно делать CAST(... AS FLOAT) ??

Попробуйте эти фрагменты - они возвращают полное количество десятичных знаков:

SELECT
    CONVERT(VARCHAR(20), 834.7833)

SELECT
    CAST(834.7833 AS VARCHAR(20))

Оба эти результата выдают следующий результат:

834.7833
...