WebDev2030
@WebDev2030
Битриксоид до мозга и костей

Почему в float атрибут пишется не верное число?

Записываю в float поле сфинкса 28847244309.74 , записывается 28847245312.000000 при это целое число 2884724430974 пишется нормально. Почему такое может быть? Я предполагаю что просто в поле не лезет число с плавающей точкой, но оно вроде должно влезть. 6059e2e25d0d8192848258.jpeg
  • Вопрос задан
  • 14 просмотров
Решения вопроса 1
WebDev2030
@WebDev2030 Автор вопроса
Битриксоид до мозга и костей
Моё число 28847244309.74 . Под флоат в сфинксе выделено 32 бита или 4 байта. Даже просто целое число занимает 35 бит. А для флоат еще надо записать положение запятой, знак + или - и мантиссу (дробную часть) так что просто не хватало памяти. В моём случае умножение на 1000 и запись в bigint решило проблему, но если дробь прям надо сохранить, то тут уже проблема.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
opium
@opium
Просто люблю качественно работать
Приведение типов кожи используете
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы