11. SQL Data Type 오류가 나요! 해결하기

김요한·2024년 6월 25일

문자 숫자 계산을 했더니 오류가 났다?

  • avg, substring 등 함수를 썼더니 에러메세지 'data type'단어가 뜨면서 실행되지 않을때

  • 위 rating 컬럼을 보았을 때 데이터가 숫자로 되어있어 자칫하면 Int로 착각 할 수 있지만

  • 위 컬럼명 옆에 'ABC'와 '123'을 확인해 보자 각각 문자와 숫자로 저장 되어있다는 의미이다.

따라서 문자,숫자를 혼합하여 함수에 사용할 때에는 데이터 타입을 변경해주어야 한다.

  • 예시
--숫자로 변경
cast(if(rating='Not given', '1' , rating) as decimal)
--Not given을 숫자 1로 변경한다.
--문자로 변경
concat(restaurant_name, '-', cast(order_id as char)
--order_id를 문자로 변경한다 

0개의 댓글