>데이터 베이스 >MySQL 튜토리얼 >SQL에서 숫자 값을 소수점 이하 두 자리로 반올림하는 방법은 무엇입니까?

SQL에서 숫자 값을 소수점 이하 두 자리로 반올림하는 방법은 무엇입니까?

DDD
DDD원래의
2025-01-07 13:22:42408검색

How to Round Numerical Values to Two Decimal Places in SQL?

SQL에서 숫자 값을 소수점 이하 두 자리로 반올림

데이터를 일관되게 표시할 때 숫자 값을 특정 소수점 이하 자릿수로 반올림해야 하는 경우가 많습니다. 그리고 정확한 방법. SQL에서는 다양한 함수와 기술을 사용하여 이 작업을 수행할 수 있습니다.

예제 시나리오

분을 소수점 이하 두 자리까지 반올림하여 시간으로 변환하는 작업을 생각해 보세요. 소수점 이하 두 자리만 표시되도록 합니다. 예를 들어, 650분을 시간으로 변환하면 10.83이 됩니다. 그러나 다음 SQL 쿼리를 사용하면

Select round(Minutes/60.0,2) from ....

630분 동안 10.5000000의 결과가 나옵니다. 목표는 대신 10.50의 반올림된 값을 얻는 것입니다.

해결책

정확한 소수점 제어로 원하는 반올림을 달성하려면 다음 기술을 사용할 수 있습니다.

select
    round(630/60.0,2),
    cast(round(630/60.0,2) as numeric(36,2))

round() 함수만으로는 표시되는 소수 자릿수를 제어할 수 없습니다. 그러나 반올림된 값을 적절한 정밀도(예: 숫자(36,2))를 사용하여 숫자 유형으로 캐스팅하면 출력을 소수점 이하 두 자리로 제한할 수 있습니다.

설명

  • round() 함수는 630/60.0 표현식을 소수점 이하 두 자리로 반올림하여 다음과 같은 결과를 얻습니다. 10.500000.
  • cast() 함수는 반올림된 값을 정밀도가 36이고 소수 자릿수가 2인 숫자 데이터 유형으로 변환합니다. 이렇게 하면 출력이 소수점 이하 두 자리로 제한되고 추가 자릿수는 잘립니다.

예상 출력

수정된 SQL 쿼리를 실행하면 주어진 예에 대해 다음 결과가 반환됩니다.

10.500000    10.50

이렇게 하면 값이 소수점 이하 두 자리까지 정확하게 반올림되어 두 번째 열에 10.50만 표시됩니다. .

위 내용은 SQL에서 숫자 값을 소수점 이하 두 자리로 반올림하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.