2015-04-15 3 views
0

Я использую Microsoft SQL Server 2008 R2.Реальная точность данных

когда я запускаю ниже запрос

select * from sys.types where name ='real' 

В колонке «точность» Я нашел значение в 24.

Но я читал в блогах, где он говорит реальный тип данных имеет точность только до-до 7 .

+0

Не используйте 'real' (или' double'), если вы хотите точные цифры: http://floating-point-gui.de/ –

ответ

0

Согласно MSDN,

синоним ISO для реального с плавающей точкой (24).

Таким образом, его значение по умолчанию точность будет 24.

+0

Таким образом, u означает, что точность по умолчанию будет 24, но на самом деле она принимает только 7. Если да, откуда я могу узнать фактическое значение точности для любого типа данных. –

+1

Пожалуйста, обратитесь к этому ответу http://stackoverflow.com/a/2057056/311255 '24 бит мантиссы дают вам (приблизительно) 7 десятичных цифр точности (потому что 2^24 ~ = 10^7) .' –

+0

Спасибо. Можете ли вы помочь мне понять, как 24 бита мантиссы преобразуются в 7 десятичных цифр точности. –

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