🔐 Database

[MYSQL] Decimal 타입 컬럼 형변환하여 Insert/Update 하기

1uckyj 2022. 11. 17. 13:06

 

 

Column 타입이 Decimal 타입인 경우,

형변환을 하지 않은 소숫점이 있는 형태의 데이터 insert/update 할 때 에러가 발생하였다.

 

이 때,

-- COL1 TYPE : DECIMAL(30,3), mybatis 기준
INSERT 
  INTO TBL1
       (
        COL1
        .
        .
        .
        )
  VALUES
       (
        CAST(#{col1} AS DECIMAL(30,3))
        .
        .
        .
        )

 

위와 같이 변환하여 쿼리 시 입력값대로 정상적인 Insert가 가능하다.

 

이 때, 자릿수는 지정하지 않고 '#{col} AS DECIMAL' 와 같이 decimal 타입으로만 변환 시 소숫점이 input되었을 때 에러가 발생하는 점을 유의해야 한다.