오늘 데이터 테이블을 디자인하다가 갑자기 FLOAT가 매우 신뢰성이 떨어지는 것을 발견했습니다. 그래서 DOUBLE 유형으로 전환하는 것을 권장합니다.
그 이유는
MySQL 매뉴얼에서 언급했듯이 MySQL의 모든 계산은 배정밀도를 사용하여 완료됩니다. 부동 소수점(단정밀도)을 사용하면 오류가 발생하고 예상치 못한 결과가 발생합니다.
데이터를 쿼리할 때 MySQL은 64비트 십진수 값의 정밀도를 사용하여 DECIMAL 연산을 수행합니다. float(5.54) = 5.54 정밀도가 손실되면 이는 동일하지 않습니다. 이런 식으로 우리가 찾아야 할 데이터는 설명할 수 없을 정도로 사라질 것입니다.
위 내용은 MySQL Advanced(10) 신뢰할 수 없는 FLOAT 데이터 형식에 대한 내용이며, 더 많은 관련 내용은 PHP 중국어 홈페이지(www.php.cn)를 참고해주세요!