mysql 정수형컬럼 값 소수점 값들 잘려서 조회 되는 것 질문 0 6 1,106

by 부구냥 [MySQL] [2020.06.08 16:45:59]


Mysql에서

decimal(19, 4) 타입으로 된 정수형 컬럼이

 

오라클에서 NUMBER로 된것이 -0.13으로 소수점까지 잘나오는데

 

mysql에서는 잘려서 -0까지만 나옵니다.... 

 

소수 2째까지 나오게 round함수로 감싸는데도 -0.13아닌 -0까지 나오는데 

 

원인을 알고 싶습니다.

by 마농 [2020.06.08 17:16:04]

decimal(19, 4) 타입으로 된 정수형 컬럼이???
소수점이 들어가는데 왜? 정수형이라고 하죠?
decimal(19, 4) 안하고 그냥 decimal(19) 또는 decimal 하신 듯 한데요?

-- Test --
SELECT -0.13 v
     , CAST(-0.13 AS DECIMAL(19,4)) v1  --> -0.1300
     , CAST(-0.13 AS DECIMAL(19)  ) v2  -->  0
     , CAST(-0.13 AS DECIMAL      ) v3  -->  0

 


by 부구냥 [2020.06.08 17:17:17]

확인해본결과 decimal(19, 4)로 되어있네요.

혹시 끝에 19, 4 때문에 -0.13 아닌 -0으로 잘려나오는건가요.


by 마농 [2020.06.08 17:18:58]

무엇을 통해서 보고 있나요? 실제와 다르게 보고 있을 지도 모릅니다.


by 부구냥 [2020.06.08 17:23:42]

혹시 CAST함수로 보이게 한건가요?


by 마농 [2020.06.08 17:31:07]

보이게 한게 아니고, 데이터 형을 바꾼 것입니다.
decimal(19, 4) 로 바꾸어 보니 -0.1300 형태로 출력되네요.


by 마농 [2020.06.08 17:42:06]

자료 입력 과정에서 잘못된 것인지? (실제로 0 이 입력되는 오류)
자료 출력 과정에서 잘못된 것인지? (실제 -0.13 이지만 0 으로 출력되는 오류)
확인이 필요해 보입니다.
입력 또는 출격 관련 툴 또는 방법 상에 문제가 있을 것으로 생각됩니다.

댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입