bestsource

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

bestsource 2023. 6. 13. 22:28
반응형

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

0이 되면 소수점 이하 2자리로 반올림하고 싶을 때마다 반올림하고 싶지 않습니다...어떻게 하면 끝에 0이 있는 소수점 두 자리로 반올림할 수 있을까요? 92가 아니라 92.00이 주어집니다.???

SELECT ROUND(COLUMN_NAME,2) FROM ....

기분이 좋아요

COLUMN_NAME
92

하지만 나는 원합니다.

COLUMN_NAME
92.00

저는 TO_CHAR를 사용했고 작동했습니다.

ROUND(TO_CHAR(COLUMN_NAME),2)

여러분 감사합니다!

TO_CHAR 함수를 사용하여 결과를 변환할 수 있습니다.

예.

SELECT TO_CHAR(92, '99.99') AS RES FROM DUAL

SELECT TO_CHAR(92.258, '99.99') AS RES FROM DUAL

도움이 되길 바랍니다.

쿼리에서 형식 지정을 피합니다.데이터를 원시 형식으로 반환하고 수신 애플리케이션(예: 보고 서비스 또는 최종 사용자 앱)이 라운딩 등의 형식을 수행하도록 해야 합니다.

서버의 데이터를 포맷하면 데이터를 더 이상 처리하기가 어렵거나 불가능할 수도 있습니다.일반적으로 테이블을 내보내거나 합계, 평균 등의 집계도 수행해야 합니다.숫자가 문자열(바르샤르)로 도착하기 때문에 일반적으로 숫자를 더 쉽게 처리할 수 없습니다.일부 보고서 설계자는 이러한 '숫자'를 집계하는 옵션 제공을 거부하기도 합니다.

또한 최종 사용자는 자신의 PC 대신 국가별 서버 포맷을 볼 수 있습니다.

또한 반올림 문제도 고려해야 합니다.서버에서 값을 반올림한 후에도 몇 가지 계산을 수행하면(클라이언트가 숫자 문자열을 다시 숫자로 되돌릴 수 있다고 가정할 경우) 잘못된 결과가 나올 수 있습니다.

이것도 됩니다.아래 문장은 소수점 두 자리로 반올림합니다.

이중에서 라운드(92.258,2)를 선택합니다;

다음을 위해 FORMAT 옵션과 함께 COLUMN 명령을 사용해 보십시오.

COLUMN COLUMN_NAME FORMAT 99.99
SELECT COLUMN_NAME FROM ....

해보세요...

SELECT TO_CHAR(column_name,'99G999D99MI')
as format_column
FROM DUAL;

언급URL : https://stackoverflow.com/questions/19720236/rounding-to-2-decimal-places-in-sql

반응형