소수점 한 자리에 내 값을 반올림하는 데 성공했지만 후행 0이 여러 개 제거되었습니다. 예를 들어,이 :SQL 반올림 값
ROUND(SUM(Duration),1)
... 저를주는 끝 :
16.9000000000000000
을 내가 모든 후행 0을 트림 어떻게.
MSSQL
소수점 한 자리에 내 값을 반올림하는 데 성공했지만 후행 0이 여러 개 제거되었습니다. 예를 들어,이 :SQL 반올림 값
ROUND(SUM(Duration),1)
... 저를주는 끝 :
16.9000000000000000
을 내가 모든 후행 0을 트림 어떻게.
MSSQL
가 round
기능 수를 반올림하지만 변경되지 않은 데이터 유형 잎 : numeric(x,1)
에 번호를 캐스팅함으로써
ROUND(3.14,1) --> 3.10
을, 둘은 반올림 변경이 한 자리 정밀도 데이터 형식입니다 :
select cast(sum(duration) as numeric(6,1))
:
CAST(3.14 as numeric(6,1)) --> 3.1
당신의 쿼리
, 이러한 캐스트처럼 볼 수 있었다
그러나 최종 표시 형식은 클라이언트에 따라 다릅니다. SQL Server Management Studio에서는 점 뒤에 한 자리 숫자로 numeric(x,1)
이 표시되지만 다른 방식으로 자유롭게 표시 할 수 있습니다. 숫자를 형식화하는 것은 SQL 외부의 클라이언트 측에 가장 적합합니다.
사용 :
CONVERT(Decimal(9, 1), ROUND(SUM(duration), 1))
진수 데이터 유형의 두 번째 매개 변수는 정밀도 - 1
는 소수점 당신에게 한 자리를 줄 것이다.