[MSSQL] 데이터 형태 변환 CONVERT / CAST 함수 설명 및 사용법

이번 포스팅에서는 데이터 타입을 변환하는 함수인 CONVERT와 CAST에 대해 살펴보겠습니다. :)

 

 

MS-SQL에서 사용되는 데이터 타입 변환 함수는 CONVERT함수와 CAST함수 입니다.

CONVERT 함수가 CAST함수보다 조금 더 활용성이 좋다고 생각해요.. (개인적 생각입니다..)

 

 

데이터의 형식이 다를 경우, 변환하고자 할 때 두 함수를 사용합니다.

쓰는 방식이 조금 다른 특징이 있어요~!

 


CONVERT?

데이터변환 시, 가장 많이 활용하는 함수 중에 하나입니다.

특히 날짜를 변환하는 경우에도 많이 활용됩니다.

 

> 부동 소수점 또는 숫자에서 정수로 변환할때 CONVERT() 함수는 해당 결과를 자릅니다.

    다른 변환일 경우에는 반올림합니다.

 

CONVERT 문법?

CONVERT(data_type[(length)], expression[style])

 

VARCHAR로 변환

SELECT CONVERT(NVARCHAR(10), 컬럼) AS 컬럼명

FROM WOOGIE_TABL

 

INT로 변환

SELECT CONVERT(INT, 컬럼) AS 칼럼명

FROM WOOGIE_TABLE

 

CHAR로 변환

SELECT CONVERT(CHAR, 컬럼) AS 컬럼명

FROM WOOGIE_TABLE 

 

 

*용어 설명

  • expression : 유효한 식
  • data_type : 대상 데이터 형식 별칭 데이터 형식은 사용할 수 없습니다.
  • length : 대상 데이터 형식의 길이를 지정하는 선택적 정수입니다. 기본값은 30입니다.
  • style : Convert함수가 식을 변환하는 방법을 지정하는 정수 식입니다. style이 Null이면 Null값이 반환됩니다.

 

 

예시

테이블(WOOGIE_TABLE)의 나이(AGE) 컬럼 데이터 형태를 INT에서 CHAR로 형태 변환

SELECT CONVERT(NVARCHAR(10), AGE)+'세' AS 나이

FROM MY_TABLE

 

테이블(MY_TALBE)에서 날짜(DTS)칼럼을 INT에서 DATE로 형태 변환

SELECT CONVERT(DATE, SUBSTRING(DTS, 1, 8)) AS 날짜

FROM WOOGIE_TABLE

 

 


다음은 CAST 함수에 대해 알아보겠습니다. :-)

CAST?

FLOAT 또는 NUMERIC에서 INTEGER로 변환할때 CAST()함수는 결과를 자릅니다.

 

CAST 문법?

CAST(expression AS data_type(length))

 

SELECT CAST(칼럼 AS INT)

FROM MY_TABLE

예시

테이블(MY_TALBE)에서 가격(PRICE)칼럼을 INT에서 VARCHAR로 형태 변환

SELECT CAST(PRICEAS AS VARCHAR)AS 가격

FROM WOOGIE_TABLE

 


데이터 변환 함수인 CONVERT / CAST에 대해 알아보았는데요~!

이렇게 형태를 변환하고자 할 때는 상황에 맞게 배운 함수를 잘 활용해봅시다. :)

 

댓글

Designed by JB FACTORY