2013-10-07 3 views
1

Есть ли способ сохранить предыдущие нули при преобразовании varchar в float в SQL Server Выберите запрос?Сохранение нулей при преобразовании varchar в float в SQL Server

declare @data varchar(100) = '000.1234'; 

Когда мы конвертируем @data в float, он будет получать только 0,1234.

Но как сохранить полные нули после преобразования из VARCHAR плавать как 000.1234 [т.е. без обрезки любых нулей]

иногда @data may be '00.23'

несмотря на то, что должен сохранить то, что когда-либо предшествующие нули после конвертации.

+1

Хранить его как 'varchar'? – AakashM

+1

Какое значение имеют ведущие нули? Почему вы хотите их сохранить? '000.1234' и' 0.1234' - это точно такое же число. –

+0

Привет, я хочу тип данных float после выбора запроса. Вот почему преобразование varchar в float. – user2846545

ответ

2

Номера с плавающей запятой всегда хранятся физически в формате, который не сохраняет ведущие нули (поскольку они не влияют на сохраненное фактическое значение).

Поэтому сохраните значение в varchar, чтобы сохранить форматирование, или иметь отдельное поле, в котором хранится количество лишних нулей, которые вам нужны при форматировании номера.

Смежные вопросы